× Installation and guides about a great free, plesk and cpanel alternative project

CWP7 Roundcube Server Error After Update - Mailbox Empty But Sending Works

Περισσότερα
6 Ημέρες 15 Ώρες πριν #340 από infogate
Hello everyone,I recently faced an issue on a CWP7 server where webmail login was working, sending mail was also working, but the mailbox/inbox was not loading.Roundcube was showing a red error message:
Server Error! (error)
The strange part was that the mailbox looked empty, but the emails were not actually missing. The problem was that Roundcube crashed while trying to render the email list.After checking the Roundcube error log:
tail -n 80 /usr/local/cwpsrv/var/services/roundcube/logs/errors.log
I found this fatal error:
PHP Fatal error: Uncaught Error: Class 'Spoofchecker' not found
in /usr/local/cwpsrv/var/services/roundcube/program/lib/Roundcube/rcube_spoofchecker.php on line 50
The issue happened after a CWP Roundcube update. The Roundcube files were updated, but the internal CWP PHP did not have the required PHP intl extension enabled, so the PHP class Spoofchecker was missing.Important note:The server websites were using PHP 7.4 normally, and PHP 7.4 had intl enabled. But Roundcube inside CWP was using CWP's own internal PHP:
/usr/local/cwp/php71/bin/php
Even though the folder says php71, on this server it was actually PHP 7.2.30, and it was missing intl.I confirmed it with:
echo "=== Check CWP PHP intl/Spoofchecker ==="for p in /usr/local/cwp/php*/bin/php /usr/bin/php; do
[ -x "$p" ] || continue
echo
echo "---- $p ----"
"$p" -v | head -1
"$p" -m | grep -i '^intl$' || echo "intl missing"
"$p" -r 'echo "Spoofchecker: "; var_export(class_exists("Spoofchecker")); echo PHP_EOL;' 2>/dev/null
done
The result showed:
---- /usr/local/cwp/php71/bin/php ----
PHP 7.2.30
intl missing
Spoofchecker: false---- /usr/bin/php ----
PHP 7.4.33
intl
Spoofchecker: true
So the normal system PHP was fine. The issue was only with the internal CWP PHP used by Roundcube.The package for CWP PHP intl was not available on this server, so I applied this safe workaround to prevent Roundcube from crashing:
RCF="/usr/local/cwpsrv/var/services/roundcube/program/lib/Roundcube/rcube_spoofchecker.php"cp -a "$RCF" "/root/rcube_spoofchecker.php.bak.$(date +%F_%H-%M-%S)"perl -0pi -e 's/(public static function check\s*([^)]+)\s*{\s*)/$1\n if (!class_exists("Spoofchecker")) {\n return false;\n }\n/s' "$RCF"systemctl restart cwpsrv
This adds a small check inside the Roundcube spoof checker file:
if (!class_exists("Spoofchecker")) {
return false;
}
After restarting cwpsrv, Roundcube started working normally again. The inbox appeared again and the server error disappeared.To verify that the patch exists:
grep -n "class_exists("Spoofchecker")" /usr/local/cwpsrv/var/services/roundcube/program/lib/Roundcube/rcube_spoofchecker.php
If the command returns a line containing class_exists, the patch is active.Important:This is a workaround, not the perfect long-term fix. The best fix would be to install/enable PHP intl for the internal CWP PHP used by Roundcube. But if the required CWP package is not available, this workaround prevents Roundcube from crashing.Also note that this file may be overwritten by a future CWP/Roundcube update. After future updates, check again with:
grep -n "class_exists("Spoofchecker")" /usr/local/cwpsrv/var/services/roundcube/program/lib/Roundcube/rcube_spoofchecker.php || echo "Roundcube Spoofchecker patch missing"
If the patch is missing and the same Roundcube error returns, reapply the fix.I also recommend checking the Roundcube temp folder for suspicious PHP files, especially if you see exploit attempts in CWP logs:
find /usr/local/cwpsrv/var/services/roundcube/temp
-type f ( -name "[i].php" -o -name ".[/i].php" -o -name ".cwp*.php" )
-ls
In my case, the mailbox was not lost. It was only a Roundcube display/listing crash caused by a missing PHP Spoofchecker class after a CWP Roundcube update.


The best possible way to start your online marketing : fspirits.com/go/leadsleap-home
Explode Your Web Site Traffice: fspirits.com/go/sparktraffic
Start your affiliate journey here: fspirits.com/go/olsp-academy
Best Solution To Create Videos: fspirits.com/go/create-studio-pro
Best Solution To Create Graphics: fspirits.com/go/clickdesigns
Smart Chat Automation: fspirits.com/go/chatterpal
Multi-Purpose Video Maker: fspirits.com/go/avatar-builder
Multi-Purpose Video Creator: fspirits.com/go/video-creator
AI Human Spokesperson Videos: fspirits.com/go/humanpal

Παρακαλούμε Σύνδεση ή Δημιουργία λογαριασμού για να συμμετάσχετε στη συζήτηση.

Χρόνος δημιουργίας σελίδας: 0.106 δευτερόλεπτα
Powered by Kunena Φόρουμ