Tous les services opérationnels Devise EUR Aucun frais de mise en service Vous êtes à La Réunion ?
‹ Hébergement web et Plesk

Redirection 301 : rediriger une page ou un site

Une redirection 301 indique au navigateur et aux moteurs de recherche qu'une adresse a changé pour de bon et les envoie vers la nouvelle. Elle conserve l'essentiel du référencement de l'ancienne page. Sur un hébergement avec Apache, elle s'écrit en une ligne dans le fichier .htaccess à la racine du site, avec la directive Redirect 301, ou avec RewriteRule quand il faut une règle plus fine, comme rediriger tout un domaine.

Par Jonathan Dewaele · publié le

Le code 301 Moved Permanently est défini par la RFC 9110, section 15.4.2. Les navigateurs le gardent en mémoire : testez une redirection en 302 (temporaire) si vous hésitez, puis passez-la en 301.

Où écrire la redirection

Chez nous, les sites passent par nginx, placé devant Apache, et Apache lit les fichiers .htaccess. Le fichier se trouve à la racine du site, dans le dossier httpdocs par défaut.

  1. Ouvrez Plesk depuis votre espace client, avec le bouton « Se connecter à Plesk ».
  2. Ouvrez le gestionnaire de fichiers, puis le dossier httpdocs.
  3. Ouvrez le fichier .htaccess s'il existe, ou créez-le. Les fichiers dont le nom commence par un point peuvent être masqués : affichez-les si besoin.
  4. Faites une copie du fichier avant de le modifier.
  5. Ajoutez vos lignes, enregistrez, puis testez l'ancienne adresse dans une fenêtre de navigation privée.

Sur WordPress, placez vos règles au-dessus du bloc qui commence par # BEGIN WordPress : WordPress réécrit ce bloc et effacerait ce qui y serait ajouté.

Pour l'usage du gestionnaire, voir Utiliser le gestionnaire de fichiers de Plesk.

Rediriger une page vers une autre

La directive Redirect du module mod_alias suffit dans la plupart des cas. La syntaxe suit la documentation d'Apache sur mod_alias, relue le 14 octobre 2026 pour Apache 2.4.

Redirect 301 /ancienne-page.html /nouvelle-page/

L'ancienne adresse commence par une barre oblique, sans le nom de domaine. La nouvelle peut être une adresse du même site ou une adresse complète vers un autre site :

Redirect 301 /boutique https://boutique.exemple.fr/

Redirect compare le début de l'adresse, segment par segment, et ajoute la suite à la destination : la ligne ci-dessus envoie aussi /boutique/chaussures vers https://boutique.exemple.fr/chaussures. Les paramètres après le point d'interrogation suivent également.

Rediriger avec une expression régulière

Pour rediriger toutes les adresses d'un modèle, RedirectMatch prend une expression régulière :

RedirectMatch 301 ^/blog/(.*)$ /actualites/$1

Contrairement à Redirect, la suite de l'adresse n'est pas ajoutée d'elle-même : c'est le $1 qui la reprend.

Rediriger tout un domaine

Pour envoyer toutes les pages d'un ancien domaine vers le nouveau, en gardant le chemin, on utilise mod_rewrite. La syntaxe suit le guide de redirection d'Apache, adapté ici au code 301 :

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?ancien-domaine\.fr$ [NC]
RewriteRule ^(.*)$ https://www.nouveau-domaine.fr/$1 [R=301,L]

Ce fichier doit être servi pour l'ancien domaine : ajoutez celui-ci à votre hébergement, ou pointez-le vers le même site. Voir Ajouter un autre site sur son hébergement.

Passer du www au domaine nu, ou l'inverse

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

Ces lignes envoient www.exemple.fr vers exemple.fr. Choisissez une seule forme pour tout le site, et réglez la même dans votre outil de gestion de contenu : sur WordPress, l'adresse du site dans Réglages, Général.

Passer de HTTP à HTTPS

Plesk sait le faire sans .htaccess : dans les paramètres d'hébergement du domaine, l'option de redirection 301 permanente de HTTP vers HTTPS envoie toutes les adresses en http vers leur version https. Elle n'a de sens qu'avec un certificat valide ; voir « Votre connexion n'est pas privée » : que faire. Si l'option vous paraît grisée, écrivez-nous.

Vérifier une redirection

  1. Ouvrez l'ancienne adresse dans une fenêtre de navigation privée : vous devez arriver sur la nouvelle.
  2. Pour voir le code exact, utilisez une commande depuis un terminal :
curl -I https://www.exemple.fr/ancienne-page.html

La réponse doit commencer par HTTP/2 301 ou HTTP/1.1 301, avec une ligne location: qui donne la destination.

  1. Si le site tombe en erreur 500 après l'enregistrement, une ligne du fichier est invalide : remettez la copie et relisez la syntaxe ; voir Erreur 500 : comprendre et corriger.

Questions fréquentes

Quelle différence entre une redirection 301 et une 302 ?

La 301 est permanente : les moteurs de recherche remplacent l'ancienne adresse par la nouvelle dans leur index. La 302 est temporaire : ils gardent l'ancienne. Pour un changement définitif, utilisez la 301.

Combien de temps garder une redirection 301 ?

Le plus longtemps possible, au moins un an. Des liens extérieurs et des favoris pointent encore vers l'ancienne adresse bien après que les moteurs ont pris en compte la nouvelle.

Ma redirection crée une boucle, que faire ?

Une boucle apparaît quand la nouvelle adresse correspond elle aussi à la règle. Ajoutez une condition qui l'exclut, ou rendez le motif plus précis avec ^ au début et $ à la fin, puis videz le cache du navigateur, qui garde les 301 en mémoire.

Articles liés