L’erreur 400 survient quand votre navigateur ne comprend pas ce que vous lui avez demandé.
La plupart du temps, cela provient d’une URL avec des accents ou caractères spéciaux. Si c’est votre site qui génère une erreur 400, corrigez votre URL pour en avoir une sans ces deux éléments.
Videz le cache de votre navigateur et consultez de nouveau l’URL corrigée.
Si cela ne fonctionne pas, explorez les solutions ci-dessous.
Réinitialiser les permaliens
Allez dans votre tableau de bord WordPress, dans la section Réglages > Permaliens.
Sur la page qui s’affiche, enregistrez les modifications sans même en avoir fait.
Cela va réinitialiser vos permaliens et pourrait faire disparaitre l’erreur 400.
Réparer votre fichier .htaccess
Le fichiers .htaccess a pu modifier l’écriture de vos URLs.
Il vous faut alors enregistrer votre fichier actuel sur votre ordinateur et éditer celui sur votre serveur pour le remettre comme il l’était à la base.
- Connectez-vous en SFTP à votre serveur
- À la racine du dossier de votre site (souvent « www »), localisez le fichier .htaccess
- Modifier votre .htaccess en remplaçant tout son contenu par :
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
- Enregistrez les changements
Allez vérifier si l’erreur est toujours présente sur votre site. Si elle est toujours là, il faut passer à de la maintenance.
Un plugin pose problème
Il se peut qu’un de vos plugins WordPress interfère avec l’écriture de vos URLs, ou fasse des redirections intempestives.
Il va falloir localiser lequel pose problème :
- Désactivez les tous
- Activez les un par un, en vérifiant à chaque réactivation si l’erreur disparaît
- Quand ça sera le cas, cela veut dire que le dernier plugin réactivé pose soucis
Dans ce cas, désactivez le ou regardez un de ses paramètres qui pose soucis en le corrigeant.
L’intervention sur serveur
Il se peut que le soucis provienne des limitations imposées par la configuration de votre serveur.
Il faut avoir certaines connaissances pour intervenir sur un serveur, je vous donne ces points à titre informatif.
Si vous êtes sur Apache, entrez ces lignes dans votre .htaccess :
LimitRequestLine 10000
LimitRequestFieldSize 10000
Si vous êtes sur Nginx, il faut plutôt modifier le fichier nginx.conf en ajoutant ceci :
large_client_header_buffers 4 16k;
À savoir, il se peut que le soucis provienne de la taille du fichier que vous essayez d’upload. Dans ce cas là, lisez le tuto suivant.