WordPress chez Free.fr, erreur 500, permaliens…

Je pense ne pas être le seul à avoir mon blog WordPress hébergé chez Free.fr ! Bien que ce soit gratuit, l’hébergement mutualisé a un prix… celui d’avoir de manière assez obscure l’erreur 500 par exemple.

Comment ça? Tout d’un coup mon site n’est plus accessible?! Je n’ai rien changé pourtant…

Pour avoir passé du temps à comprendre d’où provient le problème, je vais partager avec vous ma solution, en espérant que cela vous aidera. Bien souvent, l’édition des permaliens (va réécrire les URLs) génère à la racine de votre site un fichier “.htaccess” avec des directives WordPress à l’intérieur. Free ne supportant pas (encore?) cela va provoquer une erreur 500. Il se peut qu’un tel problème arrive également lorsque vous éditez/ajoutez un billet sur votre blog.

Non vous n’avez vraiment rien touché?

Sachez que WordPress a un système automatique de vérification des fichiers “.htaccess” et c’est peut-être pourquoi du jour au lendemain vous éprouvez ce genre de problème.

Donc en clair que faire?

Si vous n’avez jamais créé et placé un fichier “.htaccess” à la racine de votre site, faites cela :

Activez php5 vous permettra déjà de résoudre vos problèmes de feed vide (flux RSS – voir ce billet) en écrivant dans un fichier nommé “.htaccess” ceci :

php 1

Notez bien l’espace entre php et le 1. Placez ce fichier à la racine de votre WordPress. Écrasez le fichier existant s’il existe car il contient les directives WordPress qui provoquent l’erreur 500.

Si vous avez déjà fait cette étape, supprimez le fichier “.htaccess” déjà présent et remettez-le votre comme décrit juste au dessus.

D’autres solutions?

Il existe bien une solution pseudo-permanente. Le souci est qu’elle disparaitra à chaque mise à jour de votre WordPress… Elle consiste à désactiver la vérification des fichiers htaccess. Allez éditer dans /wp-admin/includes/misc.php à partir de la ligne 67 la fonction “function insert_with_markers( $filename, $marker, $insertion ) ” et faites en sorte qu’elle retourne toujours “true” (en gros effacez le corps de la fonction et mettez “return true;”).

Voilà, si vous avez des problèmes ou remarques, n’hésitez pas à partager car cela aidera très certainement de nombreuses personnes !

Articles relatifs

Vous aimerez également...