Comment résoudre l’erreur HTTP 406 de WordPress.

Cette erreur survient généralement à cause des règles de sécurité trop strictes sur le serveur de l’hébergeur qui font bloquer WordPress. Pour contourner ce problème il va falloir éditer le fichier .htaccess.

Régulièrement sur mon hébergement PlanetHoster, j’ai ce message d’erreur lorsque je veux me connecter à mon interface web d’administration WordPress :

error_406_1

Le module mod_security est mis en place par les hébergeurs pour contrer généralement les attaques par brute-force. Mod_security permet de contrôler de manière très fine les échanges entre le client et le serveur : il filtre ces échanges et autorise également une journalisation complète des événements.

Ici nous allons jouer sur deux variables :

  • SecFilterEngine Off (Mod_security est activé pour notre blog)
  • SecFilterScanPost Off (le filtrage complet des requêtes POST est désactivé)

Officiellement voici la description de l’erreur HTTP 406 :

HTTP 406 Not Acceptable : Toutes les réponses possibles seront refusées. Le navigateur ne sait pas afficher les informations qui sont envoyées par le serveur. Cela peut être dû à un format que le navigateur ne sait pas traiter. Mettez à jour votre navigateur dans sa dernière version ou remplacer le par un navigateur sachant traiter le format.

error_406_2

Pour modifier le fichier .htaccess, utiliser votre logiciel FTP favoris, afficher les fichiers cachés et ouvrer le fichier .htaccess de votre compte.

Puis rajouter à la fin de votre fichier, mais au dessus de la balise # END WordPress, les lignes suivantes :

<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

error_406_3

Sauvegarder le fichier. Retourner à la connexion de votre interface d’administration WordPress, le message a disparu.

Néanmoins, cette désactivation n’est pas conséquence sur la sécurité de votre hébergement. Je vous conseille donc deux choses :

  • Utiliser le plugin Limit Login Attempts (qui permet de protéger votre interface contre les attaques de brute force)
  • De mettre en place une double authentification pour le répertoire wp-admin et la page wp-login.php. Par exemple une procédure existe chez Planethoster pour mettre en place cette double authentification sous WordPress, très efficace pour lutter contre le piratage de ce CMS.

L’erreur HTTP 406 appartient donc maintenant au passé.

That’s All.

5 Potins

  1. @Sarah Bonjour,

    Chez quel hébergeur êtes-vous ? Pour avoir accès au fichier .htaccess il faut utiliser un logiciel FTP et afficher les fichiers cachés de votre compte.
    Si cette manipulation est trop difficile pour vous, n’hésiter pas à contacter votre hébergeur car une mauvaise manipulation dans ce fichier peut faire planter votre blog.

    A bientôt.

  2. Bonjour
    Pour moi, c’est du chinois… pardon si c’est clair mais je n’ai rien compris. Où je trouve ce fichu fichier, comment le modifier, pourquoi j’ai ce message quand je veux simplement ajouter un média sur une page ….
    l’informatique et moi, ça fait deux et wordpress, même s’il est censé être simple, certaines manipulations m’arrachent les cheveux et j’ai vraiment l’impression de ne pas m’en sortir.

  3. Bonjour Guillaume,
    merci pour ta réponse mais en fait les problèmes de résolutions dns sont internes à wordpress.
    mon site fonctionne en permanence mais mes stats jetpack ne s’affichent pas ou rarement, idem pour les sondage polldaddys et les mises à jour des extensions ne se font pas car wordpress n’arrive pas à résoudre le nom download.wordpress.com.
    Côté frontend, tout fonctionne bien pour le lecteur.
    J’avais mis en place une commande cron toutes les minutes qui faisait une résolution dns et qui inscrivait le résultat dans un fichier texte. Mais aucune erreur, c’est dans wordpress que cela se passe et je soupçonne fortement les règles de sécurité de planethoster qui viennent en conflit du firewall et qui provoquent un blocage des requêtes dns. Etant donné que sur mon autre site ovh, avec les mêmes plugins et le même thème, je n’ai strictement aucun problème.
    Merci quand même et bonne soirée.
    Sandrino

  4. Bonjour,

    A priori non, je n’ai pas remarqué d’erreur DNS. utilise-tu des outils comme Pingdom qui permettent de pinger en permanence ton site ?

    Tu verras donc à quel moment il y a des problèmes et quand.

    Sur mon blog je me suis fait une page : pour vérifier la stabilité et les performances de mon blog.

    @+

  5. Bonjour Guillaume et merci pour ton article.

    J’ai exactement le même problème chez PlanetHoster, cela va me permettre de le résoudre.

    De mon côté, j’utilise un plugin de sécurité mais quel qu’il soit (ithemes security ou wordfence security), j’ai régulièrement et aléatoirement des erreurs de résolution dns (could not resolve xxx.wordpress.com par exemple).

    Si je désactive le plugin de sécurité, j’en ai moins mais j’en ai parfois.

    Le support de planethoster me dit que cela vient de mon thème et que je dois faire un test en le désactivant, ce qui n’est bien sûr pas si simple que cela quand on a beaucoup de visiteurs sur son blog.

    Je ne l’ai pas fait car j’ai exactement les mêmes plugins sur mon hébergement planethoster que sur un autre de mes sites wordpress sur ovh. Strictement les mêmes et aucun problème chez ovh.

    Je vais voir si les modifs que tu préconises permettent également de résoudre ce problème. sinon, il faudra que je migre probablement mon site web ailleurs.

    Est-ce que tu as déjà eu des problèmes de résolution dns sur ton hébergement ?

    merci et bonne journée.

    Sandrino

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *