Fatal error with 9.6.7

Hello all,
Since the release of 9.6.7, a couple of websites have reported a fatal error. In most cases the public part is still working.
The environment is Rocky Linux 9.5, Nginx, fpm-cgi - all up to date
The error is saying:

WordPress version 6.7.2
Active theme: child based on onepress
Current plugin: WP Cerber Security, Anti-spam & Malware Scan (version 9.6.7)
PHP version 8.0.30
Error Details
=============
An error of type E_ERROR was caused in line 6116 of the file /home/bracket.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-common.php. Error message: Uncaught Error: Call to undefined function crb_get_admin_locale() in /home/bracket.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-common.php:6116

Stack trace:
#0 /home/bracket.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-load.php(2622): crb_load_localization()
#1 /home/bracket.erasmus.site/public_html/wp-includes/class-wp-hook.php(324): {closure}()
#2 /home/bracket.erasmus.site/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#3 /home/bracket.erasmus.site/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()
#4 /home/bracket.erasmus.site/public_html/wp-settings.php(704): do_action()
#5 /home/bracket.erasmus.site/public_html/wp-config.php(168): require_once('...')
#6 /home/bracket.erasmus.site/public_html/wp-load.php(50): require_once('...')
#7 {main}
thrown

It happened on few servers, common element is Cerber, so I guess something might need fixing.

1 Like

Hi!

Does your WordPress installation have any unconventional customizations, uncommon plugins, custom scripts, or a page builder that alters core functionality? Understanding your setup can help identify the root cause.

Hi Gary,
I don’t think I have anything unusual there, here is a list of active plugins:

Advanced Database Cleaner: version: 3.1.5, author: Younes JFR., 
Advanced Editor Tools: version: 5.9.2, author: Automattic, 
Classic Editor: version: 1.6.7, author: WordPress Contributors, 
CookieYes | GDPR Cookie Consent: version: 3.2.8, author: CookieYes, 
File Upload Types by WPForms: version: 1.5.0, author: WPForms, 
Health Check & Troubleshooting: version: 1.7.1, author: The WordPress.org community, 
Imagify: version: 2.2.5, author: Imagify Image Optimizer – Optimize Images & Convert WebP & Avif, 
InfiniteWP - Client: version: 1.13.2, author: Revmakx, 
Lightweight Social Icons: version: 1.1, author: Thomas Usborne, 
qTranslate-XT: version: 3.15.2, author: qTranslate Community, 
Smart Slider 3: version: 3.5.1.26, author: Nextend,
Social Media and Share Icons (Ultimate Social Media): version: 2.9.5, author: Inisev, 
TablePress: version: 3.0.4, author: Tobias Bäthge, 
W3 Total Cache: version: 2.8.6, author: BoldGrid, 
WordPress Hosting Benchmark tool: version: 1.5.1, author: Anton Aleksandrov, 
WP Cerber Security, Anti-spam & Malware Scan: version: 9.6.7, author: Cerber Tech Inc., 
WPForms Lite: version: 1.9.3.2, author: WPForms, 
Yoast SEO: version: 24.5, author: Team Yoast,

This happened to a couple of websites on different servers, so I don’t think it is related to specific machine. The websites work, both FE and BE, but they appear offline in the IWP console, maybe this is a clue of some conflict - I’m not sure.

Thanks
Chris

Most likely, this is caused by InfiniteWP. It appears to alter the standard way plugins are loaded.

I’ve been using IWP together with WP Cerber for quite some time - so I guess the latest 9.6.7 update changed something.

Oh yeah, the 9.6.7 update brought quite a few changes. WP Cerber keeps evolving. Can you check what URL is triggering the error?

I’m not sure how can I do it. The error happens during the WP Cerber update - this is when the email with error comes from the WP, but after that there are no visible errors on the page - and the IWP stays offline.

Do you mean it’s no longer working as expected?

No it isn’t. The websites with WP Cerber stay red in the console and the operations like rescan, backup, etc are not successful, with error:

Invalid message signature. Deactivate and activate the InfiniteWP Client plugin on this site, then remove the website from your InfiniteWP Admin Panel and add it again.

I tried readding, but then I also get error:

PHP Fatal error occurred: Uncaught Error: Call to undefined function crb_get_admin_locale() in /home/websitedirname/public_html/wp-content/plugins/wp-cerber/cerber-common.php:6116 Stack trace: #0 /home/websitedirname/public_html/wp-content/plugins/wp-cerber/cerber-load.php(2622): crb_load_localization() #1 /home/websitedirname/public_html/wp-includes/class-wp-hook.php(324): {closure}() #2 /home/websitedirname/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #3 /home/websitedirname/public_html/wp-includes/plugin.php(517): WP_Hook->do_action() #4 /home/websitedirname/public_html/wp-settings.php(704): do_action() #5 /home/websitedirname/public_html/wp-config.php(80): require_once('...') #6 /home/websitedirname/public_html/wp-load.php(50): require_once('...') #7 {main} thrown in /home/websitedirname/public_html/wp-content/plugins/wp-cerber/cerber-common.php on line 6116.

I use IWP v3.4.4 panel and client version 1.13.2 if that would help with anything.
Edit: perhaps interestingly, this PHP error from above is not present in any webserver log.

Hi! I believe we’ve identified the cause of the error. Could you test this update: https://downloads.wpcerber.com/plugin/wp-cerber.9.6.7.1.zip

Hello,
Thanks for this, it helped in 4 cases, but failing on 2 next websites I tried with the errors below:

PHP Fatal error occurred: Uncaught Error: Call to undefined function crb_get_admin_locale() in /home/digicults.eu/public_html/wp-content/plugins/wp-cerber/cerber-common.php:6105 Stack trace: #0 /home/digicults.eu/public_html/wp-content/plugins/wp-cerber/cerber-load.php(2622): crb_load_localization() #1 /home/digicults.eu/public_html/wp-includes/class-wp-hook.php(324): {closure}('') #2 /home/digicults.eu/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) #3 /home/digicults.eu/public_html/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #4 /home/digicults.eu/public_html/wp-settings.php(704): do_action('init') #5 /home/digicults.eu/public_html/wp-config.php(93): require_once('/home/digicults...') #6 /home/digicults.eu/public_html/wp-load.php(50): require_once('/home/digicults...') #7 {main} thrown in /home/digicults.eu/public_html/wp-content/plugins/wp-cerber/cerber-common.php on line 6105.

A the next server:


 PHP Fatal error occurred: Uncaught Error: Call to undefined function crb_get_admin_locale() in /home/esdgs.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-common.php:6105 Stack trace: #0 /home/esdgs.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-load.php(2622): crb_load_localization() #1 /home/esdgs.erasmus.site/public_html/wp-includes/class-wp-hook.php(324): {closure}() #2 /home/esdgs.erasmus.site/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #3 /home/esdgs.erasmus.site/public_html/wp-includes/plugin.php(517): WP_Hook->do_action() #4 /home/esdgs.erasmus.site/public_html/wp-settings.php(704): do_action() #5 /home/esdgs.erasmus.site/public_html/wp-config.php(100): require_once('...') #6 /home/esdgs.erasmus.site/public_html/wp-load.php(50): require_once('...') #7 {main} thrown in /home/esdgs.erasmus.site/public_html/wp-content/plugins/wp-cerber/cerber-common.php on line 6105.

They do look identical.
Thanks for working on this!

Update:
The website which was “green” yesterday, today reported an error - presumably during IWP rescan this morning:

Current plugin: WP Cerber Security, Anti-spam & Malware Scan (version 9.6.7.1) PHP version 8.0.30
Error Details
=============
An error of type E_ERROR was caused in line 6105 of the file /home/concise-h2020.eu/public_html/wp-content/plugins/wp-cerber/cerber-common.php. Error message: Uncaught Error: Call to undefined function crb_get_admin_locale() in /home/concise-h2020.eu/public_html/wp-content/plugins/wp-cerber/cerber-common.php:6105

Stack trace:
#0 /home/concise-h2020.eu/public_html/wp-content/plugins/wp-cerber/cerber-load.php(2622): crb_load_localization()
#1 /home/concise-h2020.eu/public_html/wp-includes/class-wp-hook.php(324): {closure}()
#2 /home/concise-h2020.eu/public_html/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#3 /home/concise-h2020.eu/public_html/wp-includes/plugin.php(517): WP_Hook->do_action()
#4 /home/concise-h2020.eu/public_html/wp-settings.php(704): do_action()
#5 /home/concise-h2020.eu/public_html/wp-config.php(80): require_once('...')
#6 /home/concise-h2020.eu/public_html/wp-load.php(50): require_once('...')
#7 {main}
thrown

Seems like the URL causing the error is:


. Next, visit the page where the error was caught (https://concise-h2020.eu/wp-load.php?no_cache_Tc7l6CYe=1740908853) and check for any visible issues.

This URL doesn’t load anything.

So, IWP is working correctly on some of your websites but not on others? If so, there are other factors or settings involved. Make sure that “Load security engine” is set to “Standard mode” on all of them.

Hello,
Some of the websites updated and rescanned successfully - some didn’t.
But next day in the morning all websites reported errors during IWP update rescan - which I posted above.
All of those websites are scattered across four different servers, which should be identical in terms of config, but were created at various times.
I have WP Cerber always set to standard compatibility mode.

We’re releasing a bug-fix update tomorrow.

I hope you’ve installed the last update and it works flawlessly.

I checked and updated all instances to new version, it is working as expected now.
Thank you!
Chris