HTTP vers HTTPS
Il existe 2 méthodes pour configurer une redirection HTTP** vers HTTPS avec Apache :
- méthode avec le fichier de configuration VirtualHost
- méthode alternative avec
.htaccess
La méthode VirtualHost est plus performante que la méthode avec le fichier .htaccess
.
Si vous souhaitez créer un certificat auto-signé pour Apache, vous pouvez consulter Mise en place de l'HTTPS.
Fichier de configuration du VirtualHost
La méthode recommandée est de configurer la redirection directement dans le fichier de configuration du VirtualHost HTTP.
Voici comment procéder :
-
Ouvrez le fichier de configuration du VirtualHost HTTP
(généralement dans
/etc/apache2/sites-available/votredomaine.conf
).
-
Dans la section
VirtualHost
pour le port80
, saisissez la ligne suivante :Redirect permanent / https://www.votredomaine.com/
-
Remplacez
www.votredomaine.com
par votre nom de domaine :<VirtualHost *:80>
Redirect permanent / https://www.votredomaine.com/
</VirtualHost>
-
Redémarrez Apache pour appliquer les changements :
sudo systemctl restart apache2
ou
sudo service apache2 restart
Cette méthode simple redirigera tout le trafic HTTP vers HTTPS de manière permanente (code 301
).
Fichier .htaccess
Si vous n'avez pas accès aux fichiers de configuration d'Apache, vous pouvez utiliser un fichier .htaccess
à la racine de votre site Web avec le contenu suivant :
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Cette méthode nécessite que le module mod_rewrite
soit activé sur Apache.