Votre certificat SSL est installé, le petit cadenas apparaît quand vous tapez manuellement https:// devant votre domaine. Pourtant, quand un visiteur arrive sur http://votresite.fr, il reste en HTTP. Google indexe les deux versions. Vos statistiques sont éclatées entre deux protocoles. Et votre score SEO en prend un coup.
Le problème n'est pas le certificat. Le problème, c'est que vous n'avez pas configuré la redirection HTTP vers HTTPS correctement.
Cette étape — souvent bâclée ou oubliée — est pourtant critique. Une redirection mal faite génère des boucles, des erreurs mixed content, des pages en double dans l'index de Google et une perte de jus SEO. À l'inverse, une redirection propre consolide votre autorité, sécurise vos visiteurs et envoie un signal de confiance aux moteurs de recherche.
Dans ce guide, vous allez apprendre à rediriger HTTP vers HTTPS sur WordPress de manière définitive, sans casser votre site et sans perdre une miette de référencement.
Pourquoi rediriger HTTP vers HTTPS est indispensable
Un signal de classement confirmé par Google
Depuis 2014, Google utilise le HTTPS comme facteur de classement. En 2023, plus de 95 % des résultats en première page utilisent HTTPS. Ne pas rediriger HTTP vers HTTPS, c'est laisser une partie de votre trafic sur un protocole que Google considère comme obsolète.
Mais le vrai problème SEO va plus loin : sans redirection, Google voit deux versions de chaque page — une en HTTP, une en HTTPS. C'est du contenu dupliqué pur et dur. Le moteur doit choisir laquelle indexer, et il ne fait pas toujours le bon choix.
La confiance des visiteurs
Les navigateurs modernes affichent désormais un avertissement « Non sécurisé » sur les pages servies en HTTP. Pour un site e-commerce ou un site qui collecte des données via des formulaires, c'est un repoussoir immédiat. Rediriger HTTP vers HTTPS garantit que chaque visiteur atterrit sur la version sécurisée, quel que soit le lien qu'il a cliqué.
La consolidation du link juice
Si des sites externes pointent vers votre version HTTP, ce jus de lien est dilué tant que la redirection n'est pas en place. Une redirection 301 de HTTP vers HTTPS transfère la quasi-totalité de l'autorité vers l'URL sécurisée. C'est un gain SEO gratuit.
Avant de commencer : les prérequis
Avant de toucher à quoi que ce soit, vérifiez ces points :
-
Un certificat SSL valide est installé. Tapez
https://votresite.frdans votre navigateur. Si vous voyez le cadenas sans erreur, c'est bon. Sur SEOPress.host, le certificat Let's Encrypt est déployé automatiquement. -
Une sauvegarde complète du site. Base de données et fichiers. Si la redirection tourne mal, vous devez pouvoir revenir en arrière en quelques minutes.
-
Accès au fichier .htaccess (ou à la configuration serveur). C'est là que la redirection sera configurée dans la plupart des cas.
-
Les URLs WordPress sont déjà en HTTPS. Dans Réglages > Général, les champs « Adresse web de WordPress » et « Adresse web du site » doivent commencer par
https://. Si ce n'est pas encore fait, modifiez-les avant de poursuivre.
Méthode 1 : rediriger HTTP vers HTTPS via le .htaccess (recommandé)
C'est la méthode la plus fiable et la plus performante pour rediriger HTTP vers HTTPS sur un serveur Apache. La redirection se fait au niveau du serveur, avant même que WordPress ne soit chargé. Résultat : c'est rapide et ça ne consomme aucune ressource PHP.
Le code à ajouter
Ouvrez votre fichier .htaccess à la racine de WordPress et ajoutez ces lignes tout en haut, avant le bloc # BEGIN WordPress :
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Explication ligne par ligne :
RewriteEngine On: active le moteur de réécriture d'Apache.RewriteCond %{HTTPS} off: la condition vérifie que la requête arrive en HTTP (pas en HTTPS).RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]: redirige toute URL HTTP vers son équivalent HTTPS avec un code 301 (redirection permanente).
Pourquoi une redirection 301 et pas 302
La redirection 301 indique aux moteurs de recherche que le déplacement est permanent. Google transfère alors le PageRank et l'historique d'indexation vers la nouvelle URL. Une 302 (temporaire) ne transmet pas ce signal. Pour rediriger HTTP vers HTTPS, utilisez toujours une 301.
Cas particulier : derrière un reverse proxy ou un load balancer
Si votre hébergeur utilise un proxy (comme Cloudflare ou un load balancer), la variable %{HTTPS} peut ne pas fonctionner car la connexion entre le proxy et votre serveur est souvent en HTTP. Utilisez plutôt :
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Cette variante vérifie le header X-Forwarded-Proto transmis par le proxy pour déterminer le protocole original de la requête.
Méthode 2 : rediriger HTTP vers HTTPS via Nginx
Si votre serveur tourne sous Nginx (de plus en plus courant pour les hébergements WordPress performants), la configuration se fait dans le bloc server :
server {
listen 80;
server_name votresite.fr www.votresite.fr;
return 301 https://$host$request_uri;
}
Cette configuration est minimaliste et efficace. Le return 301 est plus performant qu'un rewrite sous Nginx car il ne nécessite pas d'évaluation de regex.
Méthode 3 : rediriger HTTP vers HTTPS via un plugin WordPress
Si vous n'êtes pas à l'aise avec les fichiers de configuration serveur, un plugin peut gérer la redirection. C'est moins optimal en termes de performance (la redirection passe par PHP), mais c'est fonctionnel.
Really Simple SSL
C'est le plugin le plus utilisé pour cette tâche. Il détecte votre certificat SSL et configure automatiquement la redirection. Il corrige aussi les problèmes de mixed content à la volée.
Limites : le plugin ajoute une couche PHP à chaque requête. Sur un site à fort trafic, la redirection au niveau serveur (.htaccess ou Nginx) reste préférable.
L'option dans les extensions SEO
Certaines extensions SEO comme SEOPress (le plugin) permettent de forcer la redirection HTTPS depuis leurs réglages. Si vous utilisez déjà une telle extension, vérifiez ses options avant d'installer un plugin supplémentaire.
Corriger les URLs internes : l'étape que tout le monde oublie
Rediriger HTTP vers HTTPS au niveau du serveur ne suffit pas. Si vos contenus, images et liens internes pointent encore vers des URLs en HTTP, vous aurez deux problèmes :
- Le mixed content : le navigateur charge la page en HTTPS mais certaines ressources (images, scripts, feuilles CSS) sont appelées en HTTP. Le cadenas disparaît, remplacé par un avertissement.
- Des redirections inutiles : chaque ressource interne en HTTP déclenche une redirection 301 avant d'être servie en HTTPS. Cela ralentit le chargement.
Mettre à jour les URLs en base de données
La méthode la plus propre est de remplacer toutes les occurrences de http://votresite.fr par https://votresite.fr directement en base de données.
Avec WP-CLI :
wp search-replace 'http://votresite.fr' 'https://votresite.fr' --all-tables --dry-run
Lancez d'abord avec --dry-run pour vérifier le nombre de remplacements. Si tout semble correct, relancez sans ce flag :
wp search-replace 'http://votresite.fr' 'https://votresite.fr' --all-tables
Sans accès SSH — avec le plugin Better Search Replace :
- Installez et activez le plugin.
- Dans Outils > Better Search Replace, cherchez
http://votresite.fret remplacez parhttps://votresite.fr. - Cochez « Exécuter à blanc » d'abord pour vérifier, puis relancez pour de bon.
Vérifier les appels externes
Certaines ressources externes (polices Google Fonts, scripts CDN, iframes) peuvent encore être appelées en HTTP dans votre thème ou vos plugins. Utilisez l'outil de développement de votre navigateur (onglet Console) pour repérer les avertissements mixed content et corriger les URLs concernées.
Un outil en ligne comme Why No Padlock ou Jitbit SSL Checker peut aussi scanner votre site pour détecter les ressources non sécurisées.
Vérifier que la redirection fonctionne
Après avoir mis en place la redirection, testez systématiquement :
Test manuel
Tapez ces URLs dans votre navigateur et vérifiez qu'elles redirigent toutes vers HTTPS :
http://votresite.frhttp://www.votresite.frhttp://votresite.fr/une-page/http://votresite.fr/wp-admin/
Test avec curl
En ligne de commande, vérifiez le code de réponse :
curl -I http://votresite.fr
Vous devez voir :
HTTP/1.1 301 Moved Permanently
Location: https://votresite.fr/
Le code 301 et le Location en HTTPS confirment que la redirection est correcte.
Vérifier les chaînes de redirections
Un piège courant : la redirection HTTP → HTTPS se combine avec une redirection www → non-www (ou l'inverse), créant une chaîne de deux redirections successives. Par exemple :
http://www.votresite.fr → https://www.votresite.fr → https://votresite.fr
Ce double saut ralentit le chargement et dilue légèrement le jus SEO. L'idéal est de rediriger directement vers la destination finale en une seule étape :
http://www.votresite.fr → https://votresite.fr
Pour combiner redirection HTTP vers HTTPS et normalisation www dans le .htaccess :
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://votresite.fr/$1 [L,R=301]
Après la redirection : les actions SEO à ne pas négliger
Mettre à jour la Google Search Console
Si vous aviez déclaré la version HTTP de votre site dans la Search Console, ajoutez la propriété HTTPS. Google traite HTTP et HTTPS comme deux propriétés distinctes. Soumettez votre sitemap en HTTPS et vérifiez que l'indexation bascule progressivement.
Mettre à jour le sitemap XML
Assurez-vous que votre sitemap XML ne contient que des URLs en HTTPS. Si vous utilisez un plugin SEO pour générer votre sitemap, il devrait se mettre à jour automatiquement une fois les URLs WordPress modifiées. Vérifiez tout de même en ouvrant le fichier directement.
Mettre à jour Google Analytics et les outils tiers
Dans Google Analytics (ou GA4), vérifiez que l'URL par défaut du site est bien en HTTPS. Faites de même pour tout outil tiers qui référence votre domaine : outils de monitoring, plateformes d'affiliation, profils de réseaux sociaux.
Activer le header HSTS
Le header HTTP Strict Transport Security (HSTS) indique aux navigateurs de ne plus jamais tenter de se connecter en HTTP à votre domaine. C'est la dernière étape pour verrouiller définitivement la redirection :
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Ajoutez cette ligne dans votre .htaccess après avoir vérifié que tout fonctionne parfaitement en HTTPS pendant quelques jours. Le max-age=31536000 correspond à un an.
Attention : n'activez HSTS que lorsque vous êtes certain de ne plus revenir en HTTP. Ce header est mis en cache par les navigateurs et il est difficile de revenir en arrière.
Les erreurs fréquentes à éviter
| Erreur | Conséquence | Solution |
|---|---|---|
| Redirection 302 au lieu de 301 | Pas de transfert de PageRank | Vérifier le code de statut avec curl -I |
| Boucle de redirection infinie | Page inaccessible (ERR_TOO_MANY_REDIRECTS) | Vérifier qu'il n'y a pas de double règle (plugin + .htaccess) |
| URLs internes encore en HTTP | Mixed content, perte du cadenas | Search-replace en base de données |
| Chaîne de redirections (2+ sauts) | Ralentissement et dilution SEO | Combiner les règles en une seule redirection |
| Oubli du www/non-www | Deux versions HTTPS coexistent | Normaliser dans la même règle de redirection |
| HSTS activé trop tôt | Impossible de revenir en HTTP si problème | Tester d'abord avec un max-age court (300 secondes) |
Conclusion
Rediriger HTTP vers HTTPS sur WordPress n'est pas simplement cocher une case dans un plugin. C'est un ensemble d'actions coordonnées : configurer la redirection serveur en 301, nettoyer les URLs internes en base de données, éliminer le mixed content, éviter les chaînes de redirections et mettre à jour vos outils SEO.
Bien exécutée, cette migration consolide votre autorité de domaine, sécurise vos visiteurs et élimine un facteur de friction avec les moteurs de recherche. Mal exécutée, elle crée des boucles, du contenu dupliqué et des signaux contradictoires qui plombent votre classement.
Sur SEOPress.host, le certificat SSL est déployé automatiquement et la redirection HTTP vers HTTPS est préconfigurée au niveau serveur dès l'activation de votre hébergement. Pas de manipulation de .htaccess, pas de plugin supplémentaire, pas de risque de boucle. Vous partez directement sur une base propre pour vous concentrer sur ce qui compte : votre contenu et votre référencement.
Découvrez l'hébergement WordPress optimisé SEO sur SEOPress.host →