Redirection https vers http ou http vers https, redirection page sécurisée SSL/TLS

  Information

Il est parfois utile de pouvoir rediriger l'accès à des pages sécurisées vers la version non sécurisée. C'est utile pour éviter le duplicate content quand une même page est accessible via http et https. Pour les sites qui n'ont pas besoin d'être sécurisés il est même préférable de mettre en place la redirection https vers http (tout comme celle avec ou sans www déjà expliquée sur urlrewriting.fr). Il suffit d'un lien externe erroné pour qu'un robot de moteur de recherche indexe des pages qui ne devraient pas l'être. J'ai même eu le cas où cela générait des erreurs 500 et une surcharge du serveur à cause d'un bout de code qui n'avait pas prévu ce cas.

De même il est parfois utile de rediriger des pages internet vers une version sécurisée. C'est particulièrement utile pour protéger certaines données sensibles comme lors d'un paiement en ligne. Pour détecter si la connexion est protégée par SSL/TLS nous pouvons utiliser la variable système HTTPS. Elle contient la chaine "on" ou "off". Une condition de réécriture permet de tester ces deux valeurs pour savoir dans quel cas nous nous trouvons.

Le premier bout de code permet de faire une redirection permanente pour un accès aux pages avec https.

Le deuxième lui marche dans l'autre sens et redirige les pages non sécurisés vers celles sécurisés. Il faut bien évidement choisir l'une des deux et ne pas les mettre ensemble car la boucle infinie est garantie ;). Il est par contre possible d'ajouter une condition supplémentaire pour ne rediriger que certaines pages.


  code source classé dans  .HTACCESS

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
                               
/*
Titre : Redirection https vers http ou http vers https, redirection page sécuri
sée SSL/TLS

URL : https://phpsources.net/code_s.php?id=808
Auteur : forty
Website auteur : http://www.toplien.fr/
Date édition : 09 Avril 2013
*/
/*---------------------------------------------------------------*/
RewriteEngine on

#redirection permanente https => http
RewriteCond %{HTTPS} ^on$ [NC]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]

#redirection permanente http => https
RewriteCond %{HTTPS} ^off$ [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

   Un petit merci aux auteurs pour leur travail, ça ne coûte rien et ça fait toujours plaisir wink

[4]

  • avatar

    Forty

    30 Déc 2014 à 22:37

    Vous pouvez vous inspirer du code disponible ici :Redirection d'un ancien nom de domaine vers un nouveau nom de domaine

  • avatar

    Invité

    30 Déc 2014 à 12:45

     Bonjour,
    Je cherche une règle pour rediriger 
    https://domaine.tld vers https://www.domaine.tld
    Merci de votre aide.
    Serge

  • avatar

    Invité

    24 Aout 2013 à 10:32

     Essayes ça pour les www ça les supprime normalement :

     
    "RewriteCond %{HTTP_HOST} ^www.(.*)" sans les ""

  • avatar

    Invité

    26 Juin 2013 à 21:48

     très bien mais je n'arrive pas à combiner la redirection de https vers http et celle de www. vers sans les www 
    si il existe une solution merçi d'avance de votre aide 


 Autres snippets qui pourraient vous intéressez

Redirection automatique de http a https avec PHP

Compatibilité : PHP 5, PHP 7, PHP 8

Pour sécuriser vos websites qui ont des systèmes des paiements en ligne ou autres applications nécessitant https.

Redirection PHP ancien site vers nouveau site

Compatibilité : PHP 5, PHP 7, PHP 8

Il arrive que l'on doive faire une redirection définitive d'un ancien site vers un nouveau. Il faut alors mettre en place une redirection 301 sur chaque page.

Fonction hexadécimal vers RVB (RGB) - PHP Sources

Compatibilité : PHP 5, PHP 7, PHP 8

Donnez un code hexadécimal à la fonction (par exemple, #dddddd), et la fonction retourne un tableau de valeurs RVB.

Redirige la page index.php vers la racine du site

Compatibilité : PHP 5, PHP 7, PHP 8

Redirection de la page index sur la racine du site en générant une redirection 301 afin que Google n'indexe que l'url racine du site.

Lire les HTTP Header

Compatibilité : PHP 5, PHP 7, PHP 8

Lire n'importe quel Header de requête se fait en PHP en utilisant la fonction getallheaders ().

* Requêtes exécutées avec Recherche Contextuelle

  Derniers scripts PHP / MySQL

TwitterOAuth PHP Library pour API REST de Twitter 8.1.1

Script PHP / MySQL
Langue langue en
Date 08 Fév 2026
Taille 0.03 Mo
Catégorie Social-network

DokuWiki 2025-05-14b

logo DokuWiki
Langue langue en
Date 07 Fév 2026
Taille 4 Mo
Catégorie Wiki

WordPress 6.4.1

logo WordPress
Langue langue fr
Date 05 Fév 2026
Taille 34 Mo
Catégorie Blogs

PrestaShop 9.0.2-2.1

logo PrestaShop
Langue langue fr
Date 02 Fév 2026
Taille 116 Mo
Catégorie Ecommerce
avatar

Forty

  09 Avril 2013

  SOURCE   Télécharger
28 500 Vues
Compatibilité du code
PHP 5, 7 et 8+
avatar
58 codes

Catégorie :  .HTACCESS

Ajouter un logo en filigrane sur vos images et vos photos
Anti spam à partir des urls qui spamment
Appliquer une condition à plusieurs règles de réécriture
Augmenter les performances avec AllowOverride
Autoriser l'accès qu'a certaines extensions
Blocage d'une adresse IP avec le fichier .htaccess
Bloquer des sites qui spam - version php et .htaccess
Bloquer l'accès à certaines extensions de fichier
Bloquer les user agent (navigateur) indésirables
Comment mettre du code php avec une extension html
Compression automatique des pages
Corriger automatiquement les petites erreurs de saisie des urls
Définir le charset par défaut
Désactiver l'option MultiViews : une url est accessible avec et sans extension
Déplacer une arborescence sur une autre url
Désactiver la signature du serveur
Empêche une réécriture de boucler
Empêcher l'accès avec www.
Eviter de recharger des pages statiques en indiquant une expiration dans 100 ans
Faire une réécriture ou une redirection que si la requête ne correspond pas à un répertoire existant
Faire une réécriture ou une redirection que si le fichier n'existe pas
Faire une réécriture ou une redirection que si le fichier existe
Force la redirection en HTTPS
Forcer l'accès en français si aucune langue n'est sélectionnée
Forcer la redirection de index.html vers /
Gérer l'accès au site selon l'heure
Gestion de cache par fichier .htaccess
Interdire l'accès à un répertoire sans fichier index
Interdire l'affichage de vos images sur un autre site
Maitriser l'affichage du contenu du répertoire en cas d'absence d'index
Mettre les images, flash,... en cache plus longtemps
Modifier le type MIME (Content-Type) pour un flux rss
Obliger l'accès avec index.php et rediriger l'accès par /
Protéger un répertoire avec un mot de passe chez FREE
Protection contre les attaques de hacker avec register global on
Protection d'un répertoire avec un mot de passe
Réécrire des sous-domaines vers le domaine principal avec une variable
Réécriture de sous-domaine vers un répertoire du domaine principal
Règle de réécriture avec plus de 9 paramètres
Réécriture si la requete ne correspond pas à 1 répertoire
Recevoir un mail quand vos photos sont affichées sur un site inconnu
Redirection d'un ancien nom de domaine vers un nouveau nom de domaine
Redirection d'un répertoire vers un sous domaine
Redirection d'une arborescence vers une page unique
Redirection https vers http ou http vers https, redirection page sécurisée SSL/TLS
Redirection massive avec le sous domaine (www)
Redirection pour une maintenance de votre site
Redirige tout un repertoire d'un domaine principale vers un sous-domaine
Rediriger la racine d'un site vers un répertoire
Rediriger tout en gardant l'url d'origine
Rediriger tout un répertoire vers la racine
Rediriger un domaine vers un autre et suivre dans Google analytics
Rediriger une page vers une url contenant la date du jour
Referrer bloquer le spam
Renommer l'url et les paramètres avec une redirection 301
Substituer vos images si elles sont affichées sur un autre site
Tester les réécritures d'url en local sur un PC avec WampServer
Tracking des liens du bouton J'aime de Facebook dans Analytics