Forcer le HTTPS ne demande plus de modifier le moindre fichier : la console applique la redirection pour tout le site, en une case à cocher.
En bref : Gestion de l'hébergement → section Site web → Configuration Apache → activer Redirection automatique vers https → Sauvegarder.
Avant de commencer : le certificat SSL
La redirection n'a de sens que si votre site dispose déjà d'un certificat. Si ce n'est pas le cas, la console refuse l'activation et vous renvoie au menu Sécurisation SSL, où vous pouvez activer un certificat gratuit pour votre domaine.
Vérifiez ensuite que votre site répond correctement en https:// avant d'activer la redirection : une fois celle-ci en place, il n'y a plus d'accès en http:// pour tester.
Activer la redirection
- Dans Apanel, ouvrez Gestion de l'hébergement pour le domaine concerné.
- Dans la section Site web, cliquez sur Configuration Apache.
- Activez Redirection automatique vers https.
- Cliquez sur Sauvegarder.
La configuration est régénérée et rechargée immédiatement : toutes les pages appelées en http:// sont désormais renvoyées vers leur équivalent sécurisé.
Vérifiez d'abord votre application. Un site qui charge encore des images, des feuilles de style ou des scripts en http:// affichera un cadenas barré (« contenu mixte ») une fois en HTTPS. Corrigez ces adresses avant d'activer la redirection.
Cas des CMS : pensez à l'adresse du site
La redirection agit au niveau du serveur. Votre CMS, lui, garde en base l'adresse qu'on lui a déclarée. Si elle est restée en http://, il continuera de fabriquer des liens non sécurisés.
| CMS | Où corriger l'adresse |
|---|
| WordPress | Réglages → Général → Adresse web de WordPress et Adresse web du site |
| Joomla | Système → Configuration globale → onglet Serveur → Forcer HTTPS |
| PrestaShop | Paramètres avancés → Général → Activer SSL |
Et si j'ai besoin d'une règle sur mesure ?
L'option de la console couvre le cas courant : tout le site, en une fois. Pour une règle particulière — n'imposer le HTTPS que sur un sous-répertoire, par exemple — vous pouvez toujours écrire la règle vous-même dans un fichier .htaccess placé à la racine de votre site :
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
N'utilisez pas les deux méthodes en même temps : l'option de la console et une règle .htaccess peuvent se répondre l'une à l'autre et provoquer une boucle de redirection.
Deux points souvent oubliés dans les recettes trouvées en ligne :
[R=301,L] et non [R,L] : sans le 301, la redirection est déclarée temporaire, et les moteurs de recherche continuent d'indexer la version non sécurisée.%{HTTP_HOST} plutôt que le nom de domaine écrit en dur : la règle reste valable si le site répond aussi sur www ou sur un autre domaine.
Si la règle reste sans effet, vérifiez que l'option Prise en charge des .htaccess est bien activée dans Site web → Configuration Apache. Elle l'est par défaut.