TrueURL

Darmowe narzędzie do przekierowań

Sprawdzanie przekierowania na HTTPS

Wpisz domenę, aby przetestować cztery sposoby, w jakie można na nią wejść: przez http i https, z www i bez www. Każdy z nich powinien jednym przekierowaniem stałym prowadzić na ten sam adres HTTPS.

Co sprawdza test HTTPS

Dla wpisanego hosta TrueURL tworzy cztery początkowe adresy URL i śledzi każdy z nich:

  • http://example.com
  • http://www.example.com
  • https://example.com
  • https://www.example.com

W prawidłowej konfiguracji wszystkie cztery kończą się na jednym kanonicznym adresie URL z HTTPS. Ta wersja odpowiada bezpośrednio kodem 200 OK, a pozostałe trzy trafiają na nią jednym przekierowaniem 301 lub 308. Każdy przeskok z HTTPS z powrotem na HTTP jest oznaczany.

TrueURL sprawdza też HSTS. Odczytuje nagłówek Strict-Transport-Security z końcowej odpowiedzi HTTPS (zwykle z Twojego kanonicznego adresu URL) i pokazuje jego surową wartość, max-age oraz to, czy ustawiono dyrektywy includeSubDomains i preload. Wartość max-age wynosząca co najmniej rok oznacza wynik pozytywny. Krótszy max-age, max-age=0, nagłówek bez prawidłowej wartości max-age lub całkowity brak nagłówka są oznaczane ostrzeżeniem.

Typowe problemy z przekierowaniem na HTTPS i ich rozwiązania

  • Brak przekierowania z HTTP: wersja http:// wyświetla stronę zamiast przekierowywać. Dodaj przekierowanie na HTTPS dla całej witryny – sam tag canonical nie chroni użytkowników.
  • Dwa przeskoki lub więcej: np. z http://example.com na https://example.com, a potem na https://www.example.com. Połącz reguły protokołu i hosta tak, aby każdy wariant prowadził prosto do docelowego adresu URL (ale zobacz niżej wyjątek dotyczący listy HSTS preload).
  • Przekierowanie tymczasowe: 302 lub 307 z HTTP na HTTPS. Użyj 301 lub 308, aby wyszukiwarki indeksowały tylko wersję HTTPS.
  • Powrót z HTTPS na HTTP: przeskok z https:// z powrotem na http://, zwykle przez zbłąkaną regułę albo aplikację za proxy lub CDN, która buduje adresy bezwzględne z niewłaściwym protokołem.
  • Błędy certyfikatu: jeden z wariantów, często www, nie jest objęty certyfikatem. Sieć brzegowa Cloudflare zawsze weryfikuje certyfikaty, więc dla tego wariantu zamiast przekierowania widać błąd TLS.
  • Niespójne warianty: wersje z www i bez www kończą się na różnych adresach URL, przez co sygnały rozkładają się na dwa hosty.

HSTS i wyjątek dla listy preload

HSTS nakazuje przeglądarkom automatycznie używać HTTPS dla Twojej domeny, bez wcześniejszego żądania przez HTTP. Typowy nagłówek to Strict-Transport-Security: max-age=31536000; includeSubDomains. Przeglądarki akceptują go tylko w odpowiedziach HTTPS, a w odpowiedziach przez zwykłe HTTP go ignorują.

Jeśli chcesz dodać domenę do listy HSTS preload przeglądarek w serwisie hstspreload.org, pierwszy przeskok z HTTP musi pozostać na tym samym hoście: z http://example.com na https://example.com, a dopiero potem na https://www.example.com. Taki łańcuch z dwoma przeskokami to akceptowany wyjątek od zasady jednego przeskoku. Nagłówek musi wtedy mieć max-age ustawione na co najmniej rok oraz zawierać includeSubDomains i preload, a do tego musi być wysyłany także w samym przekierowaniu HTTPS.

Po przejściu na HTTPS

  • Zaktualizuj linki wewnętrzne, tagi canonical, adnotacje hreflang i mapę witryny, tak aby wskazywały adresy URL z HTTPS – wtedy roboty nie będą ciągle trafiać na przekierowania.
  • Utrzymuj przekierowanie z HTTP na HTTPS na zawsze – stare linki jeszcze latami będą wskazywać na http://.
  • Upewnij się, że wersja HTTPS Twojej witryny jest zweryfikowana w Google Search Console, i prześlij zaktualizowaną mapę witryny.
  • Sprawdź wszystko ponownie po każdej zmianie CDN, hostingu lub certyfikatu.

Poradniki

Najczęściej zadawane pytania

Jak sprawdzić, czy HTTP przekierowuje na HTTPS?

Wpisz domenę powyżej. TrueURL wysyła żądania do wersji http:// i https://, z www i bez www, i pokazuje, gdzie kończy się każda z nich, jakie kody odpowiedzi zostały użyte i ile było przeskoków. Konfiguracja jest prawidłowa, gdy wszystkie cztery trafiają na ten sam adres URL z HTTPS, a każde przekierowanie jest stałe.

Wybrać wersję z www czy bez www?

Dla SEO obie są równie dobre. Ważne, aby wybrać jedną, przekierować na nią drugą kodem 301 i konsekwentnie używać jej w linkach, tagach canonical i mapie witryny. Host z www bywa łatwiej skierować na CDN, bo DNS nie pozwala na rekord CNAME w domenie głównej (niektórzy dostawcy DNS oferują obejścia), ale to wybór techniczny, a nie czynnik rankingowy.

Dlaczego Chrome DevTools pokazuje 307 przy przejściu z HTTP na HTTPS?

Ten „307 Internal Redirect” generuje sam Chrome, bo witryna znajduje się na jego liście HSTS, więc żadne żądanie przez HTTP w ogóle nie zostało wysłane. Prawdziwe przekierowanie serwera może mieć kod 301 albo wyglądać zupełnie inaczej. TrueURL nie ma pamięci podręcznej HSTS, więc zawsze pokazuje rzeczywistą odpowiedź serwera.

Czy 302 z HTTP na HTTPS to problem?

Niewielki. Użytkownicy i tak trafiają na HTTPS, ale przekierowanie tymczasowe mówi wyszukiwarkom, że adres URL z HTTP może wrócić, co może spowolnić lub zaburzyć przejście na HTTPS. Zmień je na 301 lub 308.

Jak sprawdzić, czy moja witryna wysyła HSTS?

Wpisz domenę powyżej i otwórz w wynikach test „Nagłówek HSTS”. TrueURL odczytuje nagłówek Strict-Transport-Security z końcowej odpowiedzi HTTPS i pokazuje jego wartość, max-age (z ostrzeżeniem, jeśli jest krótszy niż rok) oraz to, czy ustawiono dyrektywy includeSubDomains i preload. Bez tego nagłówka każda wizyta, która zaczyna się od wpisanej domeny lub starego linku http://, rozpoczyna się od niezaszyfrowanego żądania, które ktoś w tej samej sieci mógłby przechwycić. Z nim przeglądarki, które już widziały ten nagłówek, przy następnej wizycie od razu łączą się przez HTTPS. Zacznij od krótkiego max-age, a zanim dodasz includeSubDomains, upewnij się, że każda subdomena działa przez HTTPS. Potem zwiększ max-age do roku lub więcej.

Czy mogę przetestować witrynę z nieprawidłowym lub wygasłym certyfikatem?

Zobaczysz problem, ale nie to, co jest dalej. Weryfikacji certyfikatów nie da się wyłączyć w sieci brzegowej Cloudflare, nawet przy włączonej opcji „Ignoruj błędy SSL”, więc dla danego wariantu na tym przeskoku widać błąd TLS. Zwykle i tak właśnie to musisz wiedzieć: w tym miejscu przeglądarki również pokażą użytkownikom ostrzeżenie.

Czy trzeba przekierować każdą stronę, czy tylko stronę główną?

Każdy adres URL. Reguła dla całej witryny powinna kierować http://example.com/any/path?query na tę samą ścieżkę i ten sam ciąg zapytania w HTTPS. Przetestuj kilka adresów podstron w narzędziu Sprawdzanie łańcucha przekierowań albo wiele naraz w narzędziu Masowe sprawdzanie przekierowań.