Site réparé et mod_rewrite chez free.fr
Je ne sais pas trop ce qui s'est passé, mais bon...
Enfin, si.
Chez free.fr, le mod_rewrite n'est pas activé sur Apache.
Or, pour avoir des URL plus jolies, j'ai configuré dans WordPress les permaliens. Ainsi, l'adresse d'un post se termine par catégorie/post-id/titre
Par défaut, pour que WordPress gère ce type d'URL, il faut utiliser le mod_rewrite, qui comme je l'ai dit, n'est pas disponible chez free. La solution, c'est d'aller dans votre .htaccess à la racine de votre site, de commenter la partie écrite par WordPress et de rediriger les pages 404 vers l'index.
Et pour être plus explicite...
# listing des dossiers interdit Options -Indexes
# redirection des erreurs vers l'index ErrorDocument 404 /index.php
# # BEGIN WordPress # # RewriteEngine On # RewriteBase / # RewriteCond %{REQUEST_FILENAME} !-f # RewriteCond %{REQUEST_FILENAME} !-d # RewriteRule . /index.php [L] # # END WordPress
La page d'accueil se chargera toute seule et automatiquement d'analyser la requête qui a mené à l'erreur, et va renvoyer vers la bonne page. L'inconvénient de cette solution, c'est que les vraies erreurs 404 ne sont pas gérées comme il faut. On tombe sur un index vide. Il y a peut-être moyen de gérer ça dans le template.
Merci !