Résumé : si certaines pages (toutes sauf la page d’accueil) renvoient une erreur 404 après l’activation d’une structure d’URL « jolies permaliens », les causes les plus courantes sont : règles de réécriture absentes ou corrompues dans .htaccess, module Apache mod_rewrite indisponible, conflits de plugins/thème, URL du site mal configurée dans la base de données, ou caches/CDN obsolètes. Ce guide explique les vérifications et corrections réalisables depuis WordPress et cPanel.
Prérequis
- Accès à l’administration WordPress (wp‑admin) OU accès cPanel (Gestionnaire de fichiers) et phpMyAdmin.
- Sauvegarde récente des fichiers et de la base de données. Utilisez JetBackup ou exportez la base via le guide JetBackup ou phpMyAdmin.
- Connaissance du dossier racine de votre site (ex.
public_htmlou un sous‑dossier). - Si le serveur est géré par l’hébergeur : possibilité de contacter le support pour activer
mod_rewriteou modifierAllowOverride.
Termes expliqués (une fois)
- Permaliens : structure d’URL « lisible » (ex. /categorie/nom‑article) fournie par WordPress.
- .htaccess : fichier de configuration local utilisé par Apache pour appliquer des règles (redirections, réécritures). Il se trouve à la racine du site.
- mod_rewrite : module Apache qui permet d’appliquer les règles de réécriture contenues dans
.htaccess. Sans lui, les « pretty permalinks » ne fonctionnent pas sur Apache.
Étapes rapides (test en 5 minutes)
- Dans WordPress : Réglages → Permaliens → cliquez sur Enregistrer les modifications (sans rien changer) pour forcer la régénération des règles.
- Si ça ne suffit : via cPanel → Gestionnaire de fichiers, renommez temporairement
.htaccess(ex..htaccess.bak) et réessayez la page. S’il y a du changement, recréez.htaccessavec les règles WordPress par défaut (modèle ci‑dessous). - Désactivez rapidement les plugins en renommant
wp-content/plugins(ex.plugins.off) ; si les 404 disparaissent, réactivez un plugin à la fois pour isoler le fautif. - Vérifiez si un CDN (ex. Cloudflare) ou un cache serveur renvoie une ancienne 404 et purgez‑le.
Procédure détaillée (actions numérotées)
1) Sauvegarder — fichiers + base
- Avant toute modification, exportez la base via phpMyAdmin ou utilisez JetBackup : Guide JetBackup et phpMyAdmin.
- Téléchargez une archive du dossier du site (public_html ou le dossier de l’installation).
2) Réinitialiser les permaliens depuis WordPress (si accès wp‑admin)
- Connectez‑vous à /wp‑admin → Réglages → Permaliens.
- Cliquez sur Enregistrer les modifications sans rien changer. WordPress tente d’écrire le fichier
.htaccessautomatiquement et régénère les règles.
Si WordPress ne peut pas écrire .htaccess (permissions), il affichera un message et proposera le bloc à coller manuellement — voir l’étape suivante.
Référence : la page d’aide officielle des permaliens (ouvre dans un nouvel onglet).
Paramètres Permaliens — Documentation WordPress
3) Vérifier et restaurer le fichier .htaccess
- Dans cPanel → Gestionnaire de fichiers, activez l’affichage des fichiers cachés (fichiers commençant par un point).
- Repérez le
.htaccessà la racine de l’installation (souventpublic_html). - Renommez‑le temporairement (ex.
.htaccess.bak) et testez : si les 404 disparaissent après avoir enregistré les permaliens, recréez le fichier avec le contenu correct.
.htaccess depuis le Gestionnaire de fichiers cPanel.Modèle WordPress par défaut à placer dans .htaccess (racine) :
# 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
Si votre site est installé dans un sous‑dossier (ex. /blog/), adaptez RewriteBase et la dernière règle :
# Exemple pour site dans /blog/
RewriteBase /blog/
RewriteRule . /blog/index.php [L]
Après modification, vérifiez les permissions du fichier (644 recommandé) et rechargez la page test.
4) Tester sans plugins / thème (isoler un conflit)
- Si vous avez accès à wp‑admin : désactivez tous les plugins et activez un thème par défaut (Twenty Twenty‑Three) puis testez les permaliens.
- Si vous n’avez pas wp‑admin : dans cPanel → Gestionnaire de fichiers, renommez le dossier
wp-content/pluginsenplugins.offpour désactiver toutes les extensions instantanément. Testez ensuite les URLs.
plugins via File Manager pour désactiver rapidement les extensions.Si les 404 disparaissent : restaurez le nom du dossier et réactivez les plugins un à un pour identifier le responsable.
5) Vérifier mod_rewrite et le type de serveur
Sur un serveur Apache, les permaliens reposent sur mod_rewrite. Si ce module n’est pas actif, les règles contenues dans .htaccess sont ignorées : les URLs « jolies » renverront des 404.
- En mutualisé, vous ne pouvez pas activer
mod_rewritevous‑même : contactez le support en leur fournissant les URL de test et la copie de.htaccess. - Vérifiez aussi que la directive
AllowOverridepermet l’utilisation de.htaccess(valeurAllnécessaire dans la configuration Apache).
Ressource utile (ouvre dans un nouvel onglet) :
Introduction à mod_rewrite — documentation Apache
Remarque pour Nginx : Nginx n’utilise pas .htaccess. Si votre serveur utilise Nginx ou un reverse proxy, la réécriture s’effectue dans la configuration du site (server block). Exemple courant à fournir au support :
location / {
try_files $uri $uri/ /index.php?$args;
}
6) Corriger l’URL du site (site déplacé / domaine changé)
- Ouvrez cPanel → phpMyAdmin → sélectionnez la base → table
wp_options. - Vérifiez les valeurs
siteurlethome. Si elles pointent vers l’ancienne adresse, corrigez‑les (sauvegardez d’abord un export SQL).
siteurl et home dans phpMyAdmin si l’adresse du site a changé.Guide interne pour phpMyAdmin : Comment importer / exporter et modifier la base (phpMyAdmin).
7) Utiliser WP Toolkit (si présent dans cPanel)
Si votre hébergeur propose WP Toolkit dans cPanel, il propose des vérifications d’intégrité, réparations et actions (réinstaller les fichiers de base, restaurer des sauvegardes, etc.). Il peut accélérer le diagnostic si vous ne voulez pas modifier manuellement.
Guide WP Toolkit interne : WP Toolkit (cPanel) : gérer vos installations WordPress.
8) Vider les caches et purger le CDN
Pensez à vider les caches côté :
- Plugin de cache (WP Super Cache, W3 Total Cache, etc.)
- Cache serveur (Redis, Varnish) si activé
- CDN externe (Cloudflare ou autre) — purgez la zone
9) Vérifier les redirections et pages d’erreur personnalisées
Une redirection mal configurée (dans .htaccess ou l’outil Redirections de cPanel) peut provoquer une 404. Vérifiez aussi les Pages d’erreur personnalisées si vous souhaitez afficher une page 404 spécifique.
Guide interne utile : Configurer des règles et des redirections via le fichier .htaccess et Créer une page d’erreur personnalisée.
Dépannage : causes fréquentes et vérifications rapides
- .htaccess absent ou corrompu — renommez et recréez le fichier (voir étape 3).
- mod_rewrite non activé (Apache) ou serveur Nginx — contactez le support.
- Plugin ou thème qui altère les règles de réécriture — testez en désactivant les plugins (voir étape 4).
- Mauvaises permissions (répertoires
755, fichiers644recommandé). - Site déplacé sans mettre à jour
siteurl/homedans la base — corrigez via phpMyAdmin. - Cache / CDN qui renvoie une ancienne 404 — purgez tous les caches.
- Règles de redirection conflictuelles dans
.htaccess(ex. règles générales placées avant les règles WordPress).
Quand contacter le support technique
Contactez le support si, après avoir appliqué les étapes ci‑dessus, le problème persiste. Fournissez :
- Exemples d’URL qui renvoient 404 (URL affichée + URL attendue).
- Copie (ou capture) du fichier
.htaccess— ou indiquez qu’il est absent. - Actions déjà tentées (réinitialisation permaliens, plugins désactivés, changement de theme, purge cache).
- Si possible : capture du Gestionnaire de fichiers cPanel (fichier
.htaccessvisible) et capture phpMyAdmin si vous avez modifiésiteurl. - Mentionnez si le site est derrière un CDN ou un reverse proxy (Cloudflare, Varnish, Nginx).
Limites et précautions
- Si vous n’avez pas d’accès cPanel ou SFTP, demandez au support d’effectuer les vérifications (activation
mod_rewrite, restaurer.htaccess, vérifier les logs serveur). - Ne modifiez la base (phpMyAdmin) que si vous avez sauvegardé l’export SQL au préalable.
- Les modifications d’Apache (activation de modules,
AllowOverride) nécessitent des droits administrateur serveur ; faites appel au support. - Pour les environnements Nginx, la correction passe par la configuration du serveur et non par
.htaccess— fournissez l’extraittry_filesau support si nécessaire.
Modèles utiles
.htaccess — WordPress à la racine
# 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
.htaccess — WordPress dans un sous‑dossier /blog/
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
Extrait Nginx utile à fournir au support
location / {
try_files $uri $uri/ /index.php?$args;
}
Je peux vous aider
Si vous le souhaitez, je peux :
- préparer le fichier
.htaccessadapté à votre sous‑dossier (indiquez le chemin exact du site), - ou produire la liste d’éléments à transmettre au support (URL témoin, copie de
.htaccess, actions tentées) pour accélérer l’intervention.
Ressources internes
- phpMyAdmin : importer / exporter et modifier la base
- Afficher des fichiers cachés dans le Gestionnaire de fichiers cPanel
- JetBackup 5 : sauvegarder et restaurer
- WP Toolkit (cPanel) : gérer vos installations WordPress
- Configurer des règles et des redirections via .htaccess
Sources publiques consultées
- Paramètres Permaliens — Documentation WordPress
- Introduction à mod_rewrite — documentation Apache
Documentation de référence
- Settings Permalinks screen — WordPress.org (documentation)
- Apache HTTP Server: mod_rewrite Introduction (httpd.apache.org)
- WP Toolkit Command Line Interface — cPanel documentation
Documentation consultée le 16 octobre 2026. Les outils peuvent varier selon votre hébergement.