SolvingProblems | KnownBugs
NOTE that this is NOT a support forum. If you are not contributing a solution with your problem, please first consult [support] then ask on one of our mailing lists if you cannot find the answer to your question.
Fatal error: Maximum execution time of 30 seconds exceeded in ...
PHP was unable to parse the page at default maximum execution time. Usually this happens if you a have folder with many messages.
Check your php.ini and increase value of
max_execution_time = 30
(This may be about 10 emails per second on a p350, confirmation anyone? and don't forget to restart Apache)
Actually, SquirrelMail run at my home on a P133 and within 30 seconds I usually display 300/400 mails
I increased the timeout to 120 seconds to display more than 800 mails, this should be good if you have this problem.
-- I have only one subfolder which will always timeout no matter how many seconds the max_execution_time is set to. I have folders with 10 times more emails than this folder, and they work. Any solutions?
- perhaps something in that folder is corrupt or otherwise unreadable, or it contains one or more *massive* emails?
I have the same problem in all folders :-(
SquirrelMail only displays the first e-mail. All other e-mails from the list 'time out' when I click on them. Any suggestions on what might be the case?
- Have you read main SquirrelMail site page? You are using PHP 4.4.1. This PHP version is broken. Please upgrade to 4.4.2.
Fatal error: Failed opening required '../config/config.php .....
Either the config file 'config.php' within the config directory under the main SquirrelMail directory doesn't exist, or the permissions on it need to be changed to allow read permissions to the user account the webserver runs under (normally nobody).
chmod 644 /squirrelmail-1.x.x/config/config.php
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 4097 bytes) in ./mail/functions/imap_general.php on line 82
Try increasing your "post_max_size" in php.ini from 8MB to 10MB .
Also, if you are using qmail-ldap with courier-imap there is a bug in auth_imap in versions prior to qmail-ldap20020901 patch. The error message appears when you log in with a wrong password.
If you have thousands of mails, you have to increase memory_limit = 8M in php.ini
LowMemoryProblem discusses this more.
Fatal error: Call to undefined function: quoteimap() in /path/functions/imap_general.php on line 280
You are using Linux, PHP with gettext support enabled and Turkish locale. Known PHP bug. Should be fixed in PHP v.4.3.0. If you also want to use server side sorting - write default_charset option (4. General Settings 1. Default Charset) in English upper case (ISO-8859-x, not 'capital i with dot above'SO-8859-x). SquirrelMail developers know about this problem and are working on it.
Warning: Invalid range end in /usr/share/squirrelmail/functions/i18n.php on line xx
Problem can be reproduced only on RH7.3 (at least I think so). It happens only if UTF-8 enabled glibc locale is used. this means - ca_ES, cs_CZ, da_DK, en_CA, es_ES, es_US, et_EE, fi_FI, hr_HR, is_IS, lt_LT, lv_LV, no_NO, pl_PL, sl_SI. At least I've tested with every locale file in /usr/share/i18n/locales that is about 80Kb. Emails that produce warnings use other encoding than is set in user's locale. current cyrillic decoding (iso8859-5, win1251, koi8-r) does have such function.
Fatal error: Call to undefined function: mb_detect_encoding() in /home/squirrelmail/functions/mime.php on line 322
PHP must be compiled with the --enable-mbstring option to support multi-byte characters like those used with Korean, and Japanese.
Warning: fsockopen(): php_stream_sock_ssl_activate_with_method: SSL handshake/connection failed in /usr/local/apache/htdocs/squirrelmail/class/deliver/Deliver_SMTP.class.php on line 38
Happens when you asking SquirrelMail to use TLS for SMTP. I found it gave me this error when I asked it to use SMTP on port 25...and it failed due to 25 needing the STARTTLS command. If you have a fully SSL SMTP port (for example port 465) - then tell SquirrelMail to use this instead of 25 and it should fix the problem.
Preference database error (connect failed). Exiting abnormally - when trying to use MySQL as a preference database.
One such possible solution is that your using MySQL 4.08 and it is using Safe mode, it seems when PHP is compiled it sets sql.safe_mode to being on. Check phpinfo to see if it is, if it is then MySQL logs will show up with the user of PHP not the user you specified in the DSN of SquirrelMail.
Find the line sql.safe_mode = on and set it to sql.safe_mode = off
And rehash/restart your webserver.
ALSO, if you have restored your settings after a backup... make sure your database exists (!)
I ran into this problem and the above 2 solutions didnt help. What I discovered was that MySQL 4.1+ and PHP < 5 has problems talking to each other when using pear. The issue is the in MySQL 4.1+ it uses a new hash for encrypting passwords and PHP < 5 doesnt take the new hash into account.
I had to do the following to solve this error:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('somepassword')
-> WHERE Host = 'localhost' AND User = 'someuser';
mysql> FLUSH PRIVILEGES;
More on the can be found at http://dev.mysql.com/doc/mysql/en/old-client.html
Fatal error: Call to undefined function session_id() in /var/www/localhost/htdocs/squirrelmail/functions/global.php on line 293
SquirrelMail needs session and pcre support in PHP. Check this with the phpinfo() function or run PHP -i.
Rebuild PHP with --enable-session.
In Gentoo Linux set the USE flag: session
I seem to get this problem more often, when in php.ini the line: session.file_handler is set to anything else then "files". So if this line contains anything else, like: user, etc.. change it back to files, reboot your webserver and problem solved.
I got the same error, but it wasn't due to --enable-session. I had my extension_dir set incorrectly. Try executing a plain PHP file by itself to see if that works, it didn't for me, so it was clearly a PHP configuration problem.
ERROR: Database error: connect failed in preferences DSN.
If you get this while running the configuration test, it doesn't necessarily mean that your DSN is bad. Behind the scenes, MySQL might be throwing this error: http://dev.mysql.com/doc/mysql/en/old-client.html (I was able to see it in an strace of the httpd). The fix described on the linked page seems to work:
set password for username@localhost = OLD_PASSWORD('password');
Error: Fatal error: Only variables can be passed by reference in /usr/local/apache2/htdocs/squirrelmail/functions/imap_messages.php on line 480
After upgrading from PHP4 to PHP5.1, my SquirrelMail now sends this message when I check mail, when I click on INBOX, or when I click on "sent." Everything else continues to work.
This seems to be triggered by PHP 5.1, since this error never came up when using SquirrelMail with PHP 5.0.x.
Correction: The problem also occurs with PHP 5.0.5 (not with 5.0.4) !!
Error is triggered by messages with priority headers.
You might also want to check out [patch] or upgrade to SquirrelMail 1.4.6.