Résumé rapide du problème
Quand les permaliens WordPress ne fonctionnent pas, c'est que la réécriture d'URL n'est pas appliquée par le serveur. Sur Apache, le fichier .htaccess est manquant, non inscriptible ou mod_rewrite est inactif ; sur Nginx, la configuration de réécriture n'a pas été ajoutée.
Solution rapide
Régénérez les permaliens, rendez le .htaccess inscriptible et vérifiez mod_rewrite ; sur Nginx, ajoutez la règle try_files à la configuration.
Comment reconnaître ce bug
- Les permaliens personnalisés renvoient des erreurs 404
- Seule la structure « simple » (avec ?p=) fonctionne
- WordPress signale qu'il ne peut pas écrire le fichier .htaccess
- Le problème est apparu après un changement de serveur ou d'hébergeur
Qu'est-ce que ce bug WordPress ?
Les permaliens « jolis » de WordPress reposent sur une réécriture d'URL gérée par le serveur web. Sur Apache, c'est le fichier .htaccess avec mod_rewrite ; sur Nginx, c'est une directive try_files. Si cette couche n'est pas en place ou pas autorisée, les permaliens personnalisés ne fonctionnent pas.
Pourquoi ce problème apparaît-il ?
Fichier .htaccess non inscriptible
WordPress ne peut pas mettre à jour le .htaccess faute de permissions suffisantes.
Module mod_rewrite désactivé
Sur Apache, sans mod_rewrite, la réécriture d'URL est impossible.
Serveur Nginx sans règle de réécriture
Nginx n'utilise pas .htaccess : la directive try_files doit être ajoutée à la configuration.
AllowOverride trop restrictif
La configuration Apache n'autorise pas le .htaccess à prendre effet.
Comment réparer ce bug WordPress
Régénérer les permaliens
Dans Réglages > Permaliens, cliquez sur Enregistrer pour reconstruire les règles de réécriture.
Rendre le .htaccess inscriptible
Par FTP, vérifiez la présence du fichier .htaccess et ajustez ses permissions pour que WordPress puisse l'écrire.
Activer mod_rewrite
Sur Apache, demandez à l'hébergeur d'activer le module mod_rewrite et de régler AllowOverride sur All.
Configurer Nginx
Sur Nginx, ajoutez try_files $uri $uri/ /index.php?$args; dans le bloc location du site, puis rechargez le serveur.
Comment éviter que ce bug revienne
- Vérifiez la prise en charge des permaliens avant de changer d'hébergeur
- Conservez une sauvegarde d'un fichier .htaccess fonctionnel
- Documentez la configuration de réécriture sur les serveurs Nginx
Questions fréquentes (FAQ)
Pourquoi mes permaliens WordPress ne fonctionnent-ils pas ?
Comment savoir si mon serveur utilise Apache ou Nginx ?
Pourquoi seule la structure « simple » fonctionne-t-elle ?
Comment configurer les permaliens sur Nginx ?
L'équipe Mr.WordPress
Experts en dépannage WordPress
Notre équipe technique intervient chaque jour sur des sites WordPress en panne — erreurs serveur, piratages, lenteurs, conflits de plugins. Chaque guide est rédigé et vérifié à partir de cas réels d'intervention.
En savoir plus sur Mr.WordPress →