Wordfence Security

Erreur avec Wordfence Security

Vous rencontrez peut être ce type d'erreur avec Wordfence Security :

An error of type E_ERROR was caused in line 129 of the file /wp-content/plugins/wordfence/modules/login-security/classes/controller/settings.php. Error message: Uncaught TypeError: json_decode(): Argument #1 ($json) must be of type string, array given in /wp-content/plugins/wordfence/modules/login-security/classes/controller/settings.php:129
Stack trace:
#0 /wp-content/plugins/wordfence/modules/login-security/classes/controller/settings.php(129): json_decode()
#1 /wp-content/plugins/wordfence/modules/login-security/classes/controller/notices.php(154): WordfenceLS\Controller_Settings->get_array()
#2 /wp-content/plugins/wordfence/modules/login-security/classes/controller/notices.php(117): WordfenceLS\Controller_Notices->_notices()
#3 /wp-content/plugins/wordfence/modules/login-security/classes/controller/wordfencels.php(789): WordfenceLS\Controller_Notices->enqueue_notices()
#4 /wp-includes/class-wp-hook.php(307): WordfenceLS\Controller_WordfenceLS->_admin_menu()
#5 /wp-includes/class-wp-hook.php(331): WP_Hook->apply_filters()
#6 /wp-includes/plugin.php(474): WP_Hook->do_action()
#7 /wp-admin/includes/menu.php(155): do_action()
#8 /wp-admin/menu.php(394): require_once(‘…’)
#9 /wp-admin/admin.php(158): require(‘…’)
#10 /wp-admin/plugins.php(10): require_once(‘…’)
#11 {main}
thrown`

Ou :

Notice (Suppressed) Only variables should be passed by reference 1 +
wp-content/plugins/wordfence/lib/wfDiagnostic.php:348

Ou :

An error of type E_COMPILE_ERROR was caused in line 3 of the file /wp-content/plugins/wordfence/lib/wordfenceClass.php. Error message: require_once(): Failed opening required ‘/wp-content/plugins/wordfence/lib/wfScanEngine.php’ (include_path=’.:/opt/alt/php74/usr/share/pear’)`

Ou :

An error of type E_COMPILE_ERROR was caused in line 34 of the file /wp-content/plugins/wordfence/vendor/geoip2/geoip2/src/Database/Reader.php. Error message: Declaration of GeoIp2DatabaseReader::country($ipAddress) must be compatible with GeoIp2ProviderInterface::country(string $ipAddress): GeoIp2ModelCountry

Ou :

Unable to update plugin ‘Wordfence7.4.141`’, details: PHP Warning: chmod(): Operation not permitted in /wp-admin/includes/class-wp-filesystem-direct.php on line 173

Ou :

An error of type E_ERROR was caused in line 22 of the file /wp-content/plugins/wordfence/modules/login-security/classes/controller/whitelist.php. Error message: Uncaught Error: Class ‘WordfenceLS\Model_IP’ not found in /wp-content/plugins/wordfence/modules/login-security/classes/controller/whitelist.php:22
Stack trace:
#0 /wp-content/plugins/wordfence/modules/login-security/classes/controller/wordfencels.php(356): WordfenceLS\Controller_Whitelist->is_whitelisted(‘108.162.241.31’)
#1 /wp-includes/class-wp-hook.php(287): WordfenceLS\Controller_WordfenceLS->_authenticate(Object(WP_Error), ”, ‘remi-theriault’)
#2 /wp-includes/plugin.php(206): WP_Hook->apply_filters(Object(WP_Error), Array)
#3 /wp-includes/pluggable.php(549): apply_filters(‘authenticate’, NULL, ”, ‘remi-theriault’)
#4 /wp-includes/user.php

Ou :

PHP Fatal error:  Unknown:
Failed opening required
'/wordfence-waf.php'
(include_path='.:') in Unknown on line 0

Ou :

Update Failed: WordPress database error: [Unknown column 'is_deleted' in 'where clause']SELECT * FROM devfd_wc_admin_notes WHERE 1=1 AND type IN ('survey') AND status IN ('actioned') AND is_deleted = 0 ORDER BY date_created DESC LIMIT 0, 10WordPress database error: [Unknown column 'is_deleted' in 'where clause']SELECT * FROM devfd_wc_admin_notes WHERE 1=1 AND name IN ('wc-admin-coupon-page-moved') AND is_deleted = 1 ORDER BY date_created DESC LIMIT 0, 10WordPress database error: [Unknown column 'is_deleted' in 'where clause']SELECT * FROM devfd_wc_admin_notes WHERE 1=1 AND status IN ('unactioned') AND name IN ('wc-admin-coupon-page-moved') AND is_deleted = 0 ORDER BY date_created DESC LIMIT 0, 10{“success”:true,”data”:{“update”:”plugin”,”slug”:”wordfence”,”oldVersion”:”Version 7.4.6″,”newVersion”:”Version 7.4.14″,”plugin”:”wordfence\/wordfence.php”,”pluginName”:”Wordfence Security”,”debug”:[“Enabling Maintenance mode…”,”Downloading update from https:\/\/downloads.wordpress.org\/plugin\/wordfence.7.4.14.zip…”,”The authenticity of wordfence.7.4.14.zip could not be verified as no signature was found.”,”Unpacking the update…”,”Installing the latest version…”,”Removing the old version of the plugin…”,”Plugin updated successfully.”,”Disabling Maintenance mode…”]}}

Ou :

An error of type E_ERROR was caused in line 0 of the file /wp-content/plugins/wordfence/modules/login-security/views/page/page.php. Error message: Method WordfenceLS\Model_View::__toString() must not throw an exception, caught Error: Call to undefined function esch_html__()

Ou :

PHP Fatal error:  Uncaught wfWAFStorageFileException: Unable to verify temporary file contents for atomic writing. in /wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php:52
Stack trace:
#0 /wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php(1349): wfWAFStorageFile::atomicFilePutContents('/home/customer/...', 'truncate()
#2 /wp-content/plugins/wordfence/lib/wordfenceClass.php(8841): wfWAFStorageFile->truncateAttackData()
#3 /wp-includes/class-wp-hook.php(290): wordfence::syncAttackData()
#4 /wp-includes/class-wp-hook.php(316): WP_Hook-> in /wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php on line 52

Ou :

An error of type E_ERROR was caused in line 695 of the file /wp-content/plugins/wordfence/lib/wfConfig.php. Error message: Allowed memory size of 268435456 bytes exhausted (tried to allocate 25736438 bytes)

Ou :

Got error ‘PHP message: WordPress database error Commands out of sync; you can’t run this command now for query SELECT *, CASE \nWHEN type = 3 THEN 0\nWHEN type = 4 THEN 1\nWHEN type = 7 THEN 2\nWHEN type = 6 THEN 3\nWHEN type = 5 THEN 4\nWHEN type = 9 THEN 5\nWHEN type = 8 THEN 6\nWHEN type = 2 THEN 7\nWHEN type = 1 THEN 8\nELSE 9999\nEND AS typeSort, CASE \nWHEN type = 3 THEN parameters\nWHEN type = 4 THEN parameters\nWHEN type = 1 THEN IP\nWHEN type = 9 THEN IP\nWHEN type = 5 THEN IP\nWHEN type = 6 THEN IP\nWHEN type = 7 THEN IP\nWHEN type = 2 THEN IP\nWHEN type = 8 THEN IP\nELSE 9999\nEND AS detailSort\n FROM wp_wfBlocks7 WHERE type IN (4) AND (expiration = 0 OR expiration > UNIX_TIMESTAMP()) ORDER BY typeSort ASC, id DESC made by wfWAFIPBlocksController::synchronizeConfigSettings, wfBlock::patternBlocks, wfBlock::allBlocksPHP message: WordPress database error Commands out of sync; you can’t run this command now for query SELECT *, CASE \nWHEN type = 3 THEN 0\nWHEN type = 4 THEN 1\nWHEN type = 7 THEN 2\nWHEN type = 6 THEN 3\nWHEN type = 5 THEN 4\nWHEN type = 9 THEN 5\nWHEN type = 8 THEN 6\nWHEN type = 2 THEN 7\nWHEN type = 1 THEN 8\nELSE 9999\nEND AS typeSort, CASE \nWHEN type = 3 THEN parameters\nWHEN type = 4 THEN parameters\nWHEN type = 1 THEN IP\nWHEN type = 9 THEN IP\nWHEN type = 5 THEN IP\nWHEN type = 6 THEN IP\nWHEN type = 7 THEN IP\nWHEN type = 2 THEN IP\nWHEN type = 8 THEN IP\nELSE 9999\nEND AS detailSort\n FROM wp_wfBlocks7 WHERE type IN (3) AND (expiration = 0 OR expiration > UNIX_TIMESTAMP()) ORDER BY typeSort ASC, id DESC made by wfWAFIPBlocksController::synchronizeConfigSettings, wfBlock::countryBlocks, wfBlock::allBlocksPHP message: WordPress database error Commands out of sync; you can’t run this command now for query SELECT *, CASE \nWHEN type = 3 THEN 0\nWHEN type = 4 THEN 1\nWHEN type = 7 THEN 2\nWHEN type = 6 THEN 3\nWHEN type = 5 THEN 4\nWHEN type = 9 THEN 5\nWHEN type = 8 THEN 6\nWHEN type = 2 THEN 7\nWHEN type = 1 THEN 8\nELSE 9999\nEND AS typeSort, CASE \nWHEN type = 3 THEN parameters\nWHEN type = 4 THEN parameters\nWHEN type = 1 THEN IP\nWHEN type = 9 THEN IP\nWHEN type = 5 THEN IP\nWHEN type = 6 THEN IP\nWHEN type = 7 THEN IP\nWHEN type = 2 THEN IP\nWHEN type = 8 THEN IP\nELSE 9999\nEND AS detailSort\n FROM wp_wfBlocks7 WHERE type IN (1, 8, 9, 2, 5, 6) AND (expiration = 0 OR expiration > UNIX_TIMESTAMP()) ORDER BY typeSort ASC, id DESC made by wfWAFIPBlocksController::synchronizeConfigSettings, wfBlock::ipBlocks, wfBlock::allBlocksPHP message: WordPress database error Commands out of sync; you can’t run this command now for query SELECT *, CASE \nWHEN type = 3 THEN 0\nWHEN type = 4 THEN 1\nWHEN type = 7 THEN 2\nWHEN type = 6 THEN 3\nWHEN type = 5 THEN 4\nWHEN type = 9 THEN 5\nWHEN type = 8 THEN 6\nWHEN type = 2 THEN 7\nWHEN type = 1 THEN 8\nELSE 9999\nEND AS typeSort, CASE \nWHEN type = 3 THEN parameters\nWHEN type = 4 THEN parameters\nWHEN type = 1 THEN IP\nWHEN type = 9 THEN IP\nWHEN type = 5 THEN IP\nWHEN type = 6 THEN IP\nWHEN type = 7 THEN IP\nWHEN type = 2 THEN IP\nWHEN type = 8 THEN IP\nELSE 9999\nEND AS detailSort\n FROM wp_wfBlocks7 WHERE type IN (7) AND (expiration = 0 OR expiration > UNIX_TIMESTAMP()) ORDER BY typeSort ASC, id DESC made by wfWAFIPBlocksController::synchronizeConfigSettings, wfBlock::lockouts, wfBlock::allBlocks’

Ou :

Fatal error: Allowed memory size of 419430400 bytes exhausted (tried to allocate 312484864 bytes) in /wp-includes/Requests/Transport/cURL.php on line 484

Ou :

Error writing value for wf_summaryItems (MySQLi error: [2000] Unknown MySQL error)

Ou :

wp_remote_post() test back to this server failed! Response was: cURL error 35: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

Il existe de multiples solutions pour essayer de faire en sorte que cela fonctionne.

Mises à jour

La première chose à faire si vous êtes bloqué avec Wordfence Security est de vous assurer que tout WordPress est à jour. Cela comprend :

  • Le WordPress
  • Les Extensions
  • Le Thème

Une fois toutes les mises à jour effectuées, vérifiez si ces erreurs apparaissent.

Vérifier Wordfence Security

Parfois, il suffit de désactiver l'extension et de le réactiver juste après pour qu'il fonctionne à nouveau.

Si cela ne fonctionne pas, il se peut que votre extension Wordfence Security soit corrompu. Pour vous assurer que ce n'est pas votre cas, vous pouvez retélécharger l'extension (ou le thème livré avec l'extension) et essayer de l'installer à nouveau.

Essayer un autre thème

Êtes-vous sûr que voter problème est lié à Wordfence Security? Peut-être pas.

L’erreur que vous rencontrée peut être causée par une autre extension, qui ne serait pas compatible. Cela peut se produire par exemple lorsque vous utilisez un plugin de cache, un plugin de sécurité ou simplement un plugin mal développé.

Désactivez tous les extensions. Testez de nouveau votre site voir si l’erreur apparait toujours. Si cette dernière est toujours là, le problème n'est pas lié à la compatibilité des extensions. S'il n'y a plus d'erreur, réactivez chaque extension une par une, et à chaque fois, vérifiez si l'erreur survient. Le but est de cibler l'extension concerné.

Essayer un autre thème

L'erreur peut provenir d’un problème avec votre thème.

Si ce n'est pas déjà fait, vous pouvez installer et activer le thème WordPress par défaut, comme Twenty Twenty-Two. Vérifiez une nouvelle fois si erreur est déclenchée, et agissez en fonction afin d’être sûr que votre thème WordPress n'en est pas la cause.

Permaliens & htaccess

Si cela ne fonctionne toujours pas, vous avez peut-être un problème avec vos permaliens WordPress et/ou votre fichier htaccess. Vous devriez aller sur votre tableau de bord WordPress, et ré-enregistrer les permaliens depuis la page des permaliens (dans les réglages).

Contacter le développeur

Si toutes ces solutions ne fonctionnent pas, nous vous conseillons de contacter le développeur de l'extension.

Vous avez sinon peut-être trouvé un nouveau bug, ou un problème spécifique. Dans ces cas, nous vous invitons à vous diriger vers le développeur de l'extension, soit sur le forum de l'extension, soit par mail, soit sur leur site spécifique s’il existe avec leur propre support.

Solutions alternatives

Si le développeur ne répond pas, ou si votre problème est très urgent, vous pouvez vous orienter sur une alternative à ce extension.

Il y a des milliers d'extension sur le répertoire officiel, et beaucoup d'autres en dehors. Vous devriez essayer de les trouver et de les tester !

Si le problème est très spécifique, et que l'extension n'a pas pu être remplacée, nous vous conseillons de contacter un expert.
C'est le meilleur moyen pour parvenir à trouver une solution pour votre site web afin qu’il ne soit plus cassé et pour vous assurer que tout est en ordre.