Common errors and warnings

Here are some common faults encountered with phpList and their resolutions:

Error: Please make sure that index.php is your default document for a directory

On installing phpList, you see a page entitled Error: please make sure that index.php is your default document for a directory as follows:

Error: Please make sure that index.php is your default document for a directory

This is a phpList-specific error message intended to appear if:

  • You don't have PHP installed
  • Your website host prefers to display the contents of index.html (a static page) before index.php (a dynamic page)

If you are using a web-hosting service, this would be a matter for your provider to resolve.

If you manage your own host using Apache, you'll need to edit the configuration for this server and find the DirectoryIndex directive. This line tells the web server which file is the "default" page under a given directory. There may be several options in descending order of priority. Ensure that index.php is included and that it is included before index.html.

The quick-and-dirty way to address this problem may be simply to delete index.html so that index.php will take priority.

(You can read about the functionality of Apache's DirectoryIndex directive at http://httpd.apache.org/docs/trunk/mod/mod_dir.html).

Error: IMAP is not included in your PHP installation, cannot continue

You may encounter the message error: IMAP is not included in your PHP installation, cannot continue when attempting to process bounces, as shown in the following screenshot:

Error: IMAP is not included in your PHP installation, cannot continue

This is because a vital PHP module (php-imap) is missing from your installation. This module is used not only for IMAP connections, but also for POP3 connections and contains the functions that phpList requires to poll the bounce mailbox for new messages.

To resolve this message, either request your web hosting provider to install the php-imap module or install it on your own web server.

Fatal error: Cannot connect to database, access denied. Please contact the administrator

This error indicates that one of the following four variables in config/config.php is incorrect:

  • Your database host name (often it's localhost)
  • Your database name (the actual database on the aforementioned host, where phpList's data is stored)
  • Your database username (the user who connects to the aforementioned database)
  • Your database user's password (the password used by the aforementioned user to connect)

Confirm each of these either by using a web-based control panel or from a command-line on your host.

If you have command-line access to your web host, you can test these details using the mysql command as follows:

mysql -h <hostname> -u <user> -p<password> <databasename>

A failed attempt will show you a message similar to the following:

ERROR 1045 (28000): Access denied for user 'baduser'@'localhost' (using password: YES)

A successful attempt will give the following prompt:

Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 984
Server version: 5.0.77-log Source distribution
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.
mysql>

Note

Type quit to exit from a MySQL prompt

HTTP Error 500: Internal server error

The HTTP Error 500: Internal server error is the error thrown when the server encountered an unexpected condition which prevented it from fulfilling the request. This can be caused by several factors, but in the case of phpList, if you haven't made any changes to the source code, the most likely scenario is that your web server is running PHP as a CGI as opposed to an Apache module.

Some web-hosting providers will prefer to run PHP as a CGI for its security and privilege-separation advantages.

One resolution to this problem in the context of phpList is to edit .htaccess in the root of your publicly-accessible phpList files and comment out this line (around line #12):

php_flag magic_quotes_gpc on

By changing it to:

# php_flag magic_quotes_gpc on

HTTP Error 404: File not found

Like the previous Error 500, the 404 Error status is a generic HTTP status meaning that the server couldn't find an appropriate file to match the URL you requested.

phpList needs to know the URL at which it's installed in order to generate appropriate hyperlinks, both on the web interface, and in the e-mails it delivers.

To resolve this fault, confirm that the value of Website address on the configure page is correct:

HTTP Error 404: File not found

Also confirm the values of $pageroot and $adminpages in config/config.php.

Note

If you've migrated your phpList installation from one URL to another, you may find that you are unable to save any changes made to the configure page, because phpList will redirect you to the previous URL when attempting to save. In this instance, you'll need to use a database editor to manually change the value of the website field in the phplist_config table in the database.

Warning: The pageroot in your config does not match the current location

This warning (The pageroot in your config does not match the current location) will be displayed on the admin interface if the values of $pageroot and $adminpages do not correspond to the current URL:

Warning: The pageroot in your config does not match the current location

For example, if you were accessing the admin interface at http://your-installation/demo/phplist, but you had configured $pageroot as /lists, then this error would be presented. It indicates that the URLs generated by phpList in both the configuration section and in any e-mails sent would be invalid.

Confirm that the values of $pageroot and $adminpages both align with the URL currently used to access the admin interface.

Warning: In safe mode, not everything will work as expected

PHP's "safe mode" (deprecated in upcoming version 6) was intended to increase the security of the web server by restricting certain PHP functions. This has various restricting effects on phpList, the primary one being that automated bounce list processing is not possible.

Warning: In safe mode, not everything will work as expected

If you are seeing this message, either you or your hosting provider should disable safe mode, if possible. If it's not possible to disable safe mode, you will need to process bounces manually. There is also the possibility of problems occurring when sending messages to lists that exceed 500 subscribers.

Warning: The attachment repository does not exist or is not writable

This message indicates that the filesystem path in which you've configured phpList to save its attachments, either doesn't exist, or is not writable by the web server process:

Warning: The attachment repository does not exist or is not writablewarningabout

Open config/config.php and look for the following line (around line #583):

$attachment_repository = '/tmp';

Change the value of $attachment_repository to match the location (ideally a non-public location) where you want phpList to store uploaded files. Make sure that this directory exists and that the web server process has write-access to it.

Warning: open_basedir restrictions are in effect

This message suggests that the PHP configuration on your web host has been set up with a specific range of directories that PHP may access. This open_basedir setting is often configured on shared hosts for additional security.

Warning: open_basedir restrictions are in effect

This warning is more often found in combination with the previous warning (The attachment repository does not exist or is not writable). If you see the two of these messages together, there's a high likelihood that the open_basedir security setting is preventing PHP from accessing your chosen $attachment_repository directory. Contact your hosting provider to determine which directories are usable under their open_basedir configuration", and make sure that your $attachment_repository directory is located within one of these usable directories.

Warning: Things will work better when PHP magic_quotes_gpc = on

Magic_quotes_gpc is a PHP setting (deprecated in version 6) that automatically escapes incoming data (that is, from HTML forms) to prevent SQL injection attacks. For now, phpList will work better when magic_quotes_gpc is enabled and it will present this warning message when it is not:

Warning: Things will work better when PHP magic_quotes_gpc = on

The .htaccess file supplied with phpList will automatically enable magic_quotes_gpc if possible. If you are seeing this message, it's likely your PHP configuration has been "locked down" to prevent magic_quotes_gpc from being enabled and you will need to contact your web hosting provider.

Warning: Things will work better when PHP magic_quotes_runtime = off

In contrast to the magic_quotes_gpc feature just discussed, magic_quotes_runtime will automatically escape any data returning from an external source at runtime, such as a database query or a filesystem attachment. phpList will also work better when magic_quotes_runtime is set to off:

Warning: Things will work better when PHP magic_quotes_runtime = off

Warning: You are trying to use RSS, but XML is not included in your PHP

You will see this message if you've enabled RSS processing, but your PHP installation doesn't include XML support:

Warning: You are trying to use RSS, but XML is not included in your PHP

To resolve this, compile PHP with XML support, install the appropriate php-xml module, or request your web hosting provider to arrange it.

Mailer Error: SMTP Error: Could not connect to SMTP host

You may see this error if you've configured phpList to use a custom SMTP host and the PHPMailer component is unable to connect to this host to deliver outgoing e-mails. To check your SMTP host details, edit config/config.php on line #670, and ensure that your SMTP server is set correctly. Also ensure that you have connectivity from your phpList installation to this SMTP server (that is, check firewalls and access rules).

# To use a SMTP please give your server hostname here, leave it blank to use the standard
# PHP mail() command.
define("PHPMAILERHOST",'i.dont.exist.com'),
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.189.23