Je gère un petit site Web dans un environnement LAMP d'hébergement mutualisé: cela signifie essentiellement que la seule chose que je peux modifier est un fichier htaccess.
Je voulais ajouter le support HSTS (et je l'ai fait), mais, lorsque j'ai testé mon site Web ici pour l'éligibilité de la précharge HSTS, j'ai eu l'erreur suivante:
Erreur: HTTP redirige vers www en premier
http://example
(HTTP) devrait immédiatement rediriger vershttps://example
(HTTPS) avant d'ajouter le sous-domaine www. À l'heure actuelle, la première redirection est vershttps://www.example.
La redirection supplémentaire est requise pour garantir que tout navigateur prenant en charge HSTS enregistrera l'entrée HSTS pour le domaine de niveau supérieur, pas seulement le sous-domaine.
Donc, je suppose que je devrais rediriger les utilisateurs de cette façon:
http://example
(c'est ce que l'utilisateur entre dans la barre d'adresse de son navigateur)https://example
(nous le redirigeons vers la version HTTPS du site)https://www.example
(nous le redirigeons à nouveau vers le sous-domaine www)
Ma redirection actuelle se fait de cette façon:
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
J'ai essayé d'ajouter une redirection avant la dernière ligne, de cette façon:
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
mais j'ai reçu une erreur "la page ne redirige pas correctement" du navigateur.
Alors, quelle est la bonne façon de rediriger un utilisateur de la version http du site Web vers le https et enfin vers le https avec www? Et: y a-t-il des risques?
la source
Strict-Transport-Security
tête de réponse. Par exemple, pour définir cela sur la redirection, vous devrez utiliser l'always
argument de laHeader
directive. J'ai répondu à une question connexe sur la pile Pro Webmasters (ignorer la première partie de ma réponse à propos deon
/off
) qui va plus en détail sur l'implémentation de la " précharge HSTS " dans.htaccess
..htaccess
seules questions liées (ServerFault suppose que vous avez le contrôle total du serveur, auquel cas vous ne le feriez pas.htaccess
). Il est sans doute plus facile de l'implémenter dans la configuration du serveur en utilisant des<VirtualHost>
conteneurs séparés (car vous n'avez pas besoin de jouer avec les vars env et les conditions supplémentaires - c'est "plus propre" et moins sujet aux erreurs). Je ne pense pas que je recommanderais la soumission d'une "liste de préchargement" si vous n'y avez accès.htaccess
. (Mon 2c)