Jak korzystać z narzędzia
- 1.Wpisz adres URL, np.
https://example.com/page, albo samą domenę.https://zostanie dodane automatycznie. - 2.Kliknij „Sprawdź nagłówki”. Narzędzie wykonuje przekierowania po kolei, maksymalnie 10.
- 3.Przeczytaj łańcuch przekierowań: każdy krok pokazuje kod statusu, adres i czas odpowiedzi. Rozwiń krok, aby zobaczyć jego nagłówki.
- 4.Przejrzyj nagłówki bezpieczeństwa i pełne nagłówki odpowiedzi strony końcowej, a w razie potrzeby skopiuj je, aby komuś je przekazać.
Co oznaczają kody statusu HTTP
Każda odpowiedź zaczyna się od trzycyfrowego kodu statusu. 2xx oznacza sukces (200 OK to zwykła strona). Kody 3xx to przekierowania, które odsyłają przeglądarkę gdzie indziej. Kody 4xx to błędy po stronie klienta, takie jak 404 Not Found czy 403 Forbidden, a kody 5xx oznaczają błąd serwera, np. 500 Internal Server Error lub 503 Service Unavailable.
Razem z kodem statusu przesyłane są nagłówki. Mówią przeglądarce, jaka to treść (Content-Type), jak długo można ją przechowywać w pamięci podręcznej (Cache-Control), jakie pliki cookie zapisać (Set-Cookie) i wiele więcej. To informacje, których nigdy nie widać na samej stronie.
Przekierowania: 301, 302, 307 i 308
301 Moved Permanently i 308 Permanent Redirect informują przeglądarki i wyszukiwarki, że strona została przeniesiona na stałe, więc linki i pozycje w wynikach wyszukiwania przechodzą na nowy adres. 302 Found i 307 Temporary Redirect oznaczają, że przeniesienie jest tymczasowe, a stary adres URL pozostaje w wynikach wyszukiwania. 307 i 308 gwarantują też, że metoda żądania się nie zmieni, co ma znaczenie dla formularzy i API.
Każdy dodatkowy krok to kolejna wymiana zapytania i odpowiedzi, która spowalnia pierwszą wizytę, więc przekierowuj stare adresy URL bezpośrednio na adres docelowy: http://example.com od razu na https://www.example.com/, a nie w dwóch krokach. Google podąża za maksymalnie 10 przekierowaniami z rzędu, a przeglądarki za około 20; pętle nie kończą się nigdy.
Nagłówki bezpieczeństwa, które warto ustawić
Strict-Transport-Security (HSTS) sprawia, że przeglądarki używają HTTPS dla Twojej strony, nawet gdy ktoś wpisze http://. Content-Security-Policy ogranicza, skąd mogą być wczytywane skrypty i inne zasoby, co osłabia ataki cross-site scripting. X-Content-Type-Options: nosniff powstrzymuje przeglądarki przed zgadywaniem typów plików, a frame-ancestors lub X-Frame-Options nie pozwala innym stronom osadzać Twoich stron w ramkach w celu clickjackingu.
Referrer-Policy określa, jaka część Twoich adresów URL jest wysyłana do innych stron, a Permissions-Policy wyłącza funkcje przeglądarki, których nie używasz, takie jak kamera czy geolokalizacja. Żaden z tych nagłówków nie zastąpi bezpiecznego kodu, ale razem niewielkim nakładem pracy zamykają typowe luki.
Pytania i odpowiedzi
Jak sprawdzić, czy przekierowanie to 301 czy 302?
Wpisz stary adres URL i spójrz na łańcuch przekierowań: każdy krok pokazuje swój kod statusu. 301 i 308 są stałe, 302 i 307 tymczasowe. Łańcuch pokazuje też, dokąd prowadzi każde przekierowanie, więc łatwo wychwycisz zbędne dodatkowe kroki.
Jak zobaczyć nagłówki HTTP strony internetowej?
Wpisz tutaj adres, a pełne nagłówki odpowiedzi strony końcowej pojawią się na końcu. W przeglądarce otwórz narzędzia deweloperskie (F12), wybierz kartę Sieć i kliknij pierwsze żądanie. W terminalu nagłówki wyświetli polecenie curl -I https://example.com.
Dlaczego to narzędzie pokazuje inne nagłówki niż moja przeglądarka?
Serwery mogą odpowiadać różnie w zależności od żądania. Przeglądarka wysyła pliki cookie, obsługuje kompresję i ma własny identyfikator (user agent), a CDN może serwować kopię z pamięci podręcznej lub wersję regionalną. To narzędzie wysyła z naszego serwera zwykłe żądanie bez plików cookie, podobnie jak robot wyszukiwarki.
Co powoduje pętlę przekierowań?
Przekierowania prowadzą z powrotem do adresu, który był już odwiedzony, więc przeglądarka nigdy nie dociera do strony i pokazuje błąd „zbyt wiele przekierowań”. Zwykle to dwie reguły, które sobie przeczą (np. CDN przekierowuje HTTP na HTTPS, a serwer przekierowuje HTTPS z powrotem na HTTP), albo przekierowanie do logowania zależne od pliku cookie.
Jakie nagłówki bezpieczeństwa powinna mieć każda strona?
Co najmniej Strict-Transport-Security, X-Content-Type-Options: nosniff, ochronę przed osadzaniem w ramkach za pomocą frame-ancestors lub X-Frame-Options oraz Referrer-Policy. Content-Security-Policy chroni najlepiej, ale wymaga testów, więc zacznij od polityki w trybie report-only i przełącz się na jej egzekwowanie, gdy nic się nie psuje.