Redirection automatique http vers https

Pré-requis :

  1. Activer le mod_ssl sur Apache
  2. Générer un certificat SSL
  3. Avoir son site accessible aussi bien en http qu'en https

Comment rediriger automatiquement une connexion http en https pour un virtual host précis:

Par exemple http://monDomaine.com --> https://monDomaine.com

  1. Editer le fichier de configuration du virtual host (/etc/apache2/sites-enabled/monDomaine.com.conf)
  2. Ajouter les informations suivantes indiquées en rouge
    <VirtualHost *:80>
    ServerName monDomaine.com
    CustomLog /var/log/apache2/toto-access.log combined
    ErrorLog /var/log/apache2/toto-error.log
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteLog /var/log/apache2/https_rewrite.log
    RewriteLogLevel 1
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [L,R]
    </IfModule>
    </VirtualHost>
  3. Redémarrer Apache (/etc/init.d/apache2 restart)
 
Pour rediriger une page bien précise :
 
 
Préciser à la fin du fichier de configuration du virtual host l'information suivante
 

RedirectPermanent /login "https://monDomaine.com/login"