Activer HTTPS sur votre site

From Joomla! Documentation

This page is a translated version of the page Enabling HTTPS on your site and the translation is 92% complete.
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎português do Brasil

Qu'est-ce que SSL/TLS ?

Transport Layer Security (TLS) est le successeur de Secure Sockets Layer (SSL), même si la plupart des gens y font encore référence dans les articles de blog. Avez-vous déjà remarqué le cadenas à côté de l'URL lorsque vous naviguez sur Internet ? Cela signifie que toutes les données que vous envoyez à ce site web sont cryptées, de sorte que toute personne ayant piraté votre réseau (ou autre) et pouvant intercepter vos requêtes ne peut pas voir les données - elle ne peut voir que les URL auxquelles vous accédez.

Pourquoi utiliser TLS ?

Google (et la plupart des autres moteurs de recherche) traite désormais les sites utilisant https avec préférence[1]. En outre, de nombreux navigateurs signalent tout site Web comportant un formulaire (tel qu'un formulaire de connexion ou de contact) qui n'utilise pas https[2].

Comment configurer TLS ?

Pour configurer le certificat, le plus simple est de demander à votre hébergeur de le faire pour vous.

Le bon certificat à acheter dépend des protections de sécurité requises pour votre site Web. Si vous ne le savez pas, l'option la moins chère et la plus simple est probablement d'utiliser Let's Encrypt - c'est gratuit et, selon votre hébergeur, peut souvent être configuré directement à partir de votre tableau de bord d'hébergement cpanel ou plesk.

Si vous avez acheté une IP dédiée et un certificat SSL, il vous suffit de demander l'aide de votre hébergeur, qui se chargera de le faire signer et de l'installer au bon endroit pour vous.

Comment rediriger tout mon trafic vers https

Dans Joomla

Le moyen le plus simple de faire respecter le trafic https est de le faire dans Joomla. Dans la configuration globale, il y a une option "Force HTTPS" qui vous permet de forcer HTTPS soit dans la zone de l'administrateur uniquement, soit pour l'ensemble du site. Vous voudrez presque toujours utiliser cette dernière option.

Image Showing the Force HTTPS option in the Joomla 3.x default backend template

Dans .htaccess

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]
<IfModule !mod_ssl.c>
Redirect permanent / https://www.yourdomainname.com
</IfModule>

Exemples de .htaccess plus complexes

Par exemple, pour passer de HTTP à HTTPS sur toute page dont l'URL contient "abc/def" ou "ghi", ajoutez quelque chose comme ceci :

Code :

RewriteCond %{HTTPS} off
RewriteRule ^(abc/def|ghi)(.*)/?$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]

... et pour repasser de HTTPS à HTTP sur toute page dont l'URL contient "home" ou "help", faites quelque chose comme ceci :

Code :

RewriteCond %{HTTPS} on
RewriteRule ^(home|help)(.*)/?$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]

Si vous voulez forcer le SSL sur un dossier spécifique, vous pouvez insérer le code ci-dessous dans un fichier .htaccess placé dans ce dossier spécifique :

Code :

RewriteEngine On 
RewriteCond %{REQUEST_URI} folder 
RewriteRule ^(.*)$ https://www.example.com/folder/$1 [R,L]

Veillez à remplacer la référence du dossier par le nom du dossier réel. Veillez ensuite à remplacer www.example.com/folder par le nom de votre domaine et le dossier sur lequel vous souhaitez forcer le SSL.