Zarządzam małą stroną internetową we współdzielonym środowisku LAMP: to w zasadzie oznacza, że jedyną rzeczą, którą mogę edytować, jest plik htaccess.
Chciałem dodać obsługę HSTS (i zrobiłem to), ale kiedy przetestowałem tutaj swoją witrynę pod kątem uprawnień do wstępnego ładowania HSTS, otrzymałem następujący błąd:
Błąd: HTTP najpierw przekierowuje na www
http://example
(HTTP) powinien natychmiast przekierować nahttps://example
(HTTPS) przed dodaniem subdomeny www. W tej chwili pierwsze przekierowanie tohttps://www.example.
Dodatkowe przekierowanie jest wymagane, aby każda przeglądarka obsługująca HSTS rejestrowała wpis HSTS dla domeny najwyższego poziomu, a nie tylko subdomeny.
Przypuszczam, że powinienem przekierowywać użytkowników w ten sposób:
http://example
(właśnie to użytkownik wprowadza w pasku adresu swojej przeglądarki)https://example
(przekierowujemy go do wersji strony HTTPS)https://www.example
(ponownie przekierowujemy go do subdomeny www)
Moje obecne przekierowanie odbywa się w następujący sposób:
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
Próbowałem dodać przekierowanie przed ostatnim wierszem w ten sposób:
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
ale w przeglądarce pojawia się błąd „strona nie przekierowuje poprawnie”.
Jaki jest zatem właściwy sposób przekierowania użytkownika z wersji http witryny do https i wreszcie do https z www? I: czy są jakieś zagrożenia?