Configurer une redirection

3 min de lecture07 novembre 2026

Une redirection envoie le navigateur d'une URL vers une autre. Bien utilisée, elle unifie le nom canonique du site (www ou sans www) et préserve le référencement. Mal utilisée, elle crée des boucles, casse les formulaires ou cache une erreur pendant des mois.

1. Choisir le code HTTP

Code Signification Usage
301 déplacé définitivement canonicalisation, migration stable
302 trouvé, temporaire test, maintenance courte
307 temporaire, méthode conservée API, formulaires
308 permanent, méthode conservée migration d'API

Un 301 est mis en cache par les navigateurs et les moteurs de recherche. Ne l'utilisez pas pendant un test : un mauvais 301 peut rester actif longtemps chez les visiteurs. Pour une bascule à vérifier, commencez par 302.

2. Utiliser l'option du panneau

Si KeyHelp propose une redirection par domaine ou par chemin, préférez-la : elle est appliquée avant vos fichiers et évite les erreurs de .htaccess. Renseignez l'URL source, l'URL cible et le code. Vérifiez que la cible inclut le bon schéma (https://) et le bon nom d'hôte.

Pour une redirection globale www vers sans www, l'option du panneau suffit souvent. Sinon, passez à la configuration Apache.

3. Écrire la règle Apache

Dans .htaccess, à la racine du site :

Texte
RewriteEngine On

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

%1 reprend la capture de la condition, $1 celle de la règle. La règle conserve le chemin demandé : /contact reste /contact, sans repasser par l'accueil.

Pour forcer HTTPS puis supprimer www, enchaînez deux règles sans les fusionner :

Texte
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

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

La première passe en HTTPS en conservant le nom demandé ; la seconde ne s'applique qu'une fois HTTPS actif, puis retire www. Cette séparation évite qu'une même règle se réapplique à sa propre cible.

4. Éviter les boucles

Une boucle survient quand la règle s'applique aussi à la cible. Vérifiez toujours :

  • que la cible ne correspond pas à la condition ;
  • que le schéma détecté correspond à la réalité (proxy TLS) ;
  • qu'aucune autre règle ne redirige en sens inverse ;
  • que le sous-domaine et le domaine principal ne se renvoient pas l'un à l'autre.

Ne redirigez pas un POST vers une page qui n'accepte que GET sans le vouloir : utilisez 307/308 si la méthode doit être conservée.

5. Vérifier

Bash
curl -I http://www.votre-domaine.fr/contact
curl -IL http://votre-domaine.fr/contact

La première commande doit renvoyer 301 avec un Location en https://votre-domaine.fr/contact. La seconde suit la chaîne : une seule redirection suffit, pas trois. Testez aussi une page inexistante et un formulaire.

Terminez par un contrôle dans un navigateur en navigation privée, puis supprimez les règles de test. Conservez une note de la règle active : dans six mois, personne ne se souviendra pourquoi elle existe.

Publicité

Cet article vous a-t-il aidé ?

À lire aussi