Rewalidacja przez ETag i Last-Modified
ETag i Last-Modified: nagłówki, dzięki którym przeglądarka pyta, czy coś się zmieniło, i dostaje krótkie 304 zamiast całej strony.
Walidatory pozwalają przeglądarce zapytać serwer „czy coś się zmieniło od mojej kopii?”, zamiast pobierać stronę od nowa. Są dwa: ETag — identyfikator bieżącej wersji odpowiedzi (często hash) — oraz Last-Modified — czas ostatniej zmiany. Przy kolejnej wizycie przeglądarka odsyła je jako If-None-Match lub If-Modified-Since. Jeśli nic się nie zmieniło, serwer odpowiada 304 Not Modified bez treści — kilkaset bajtów zamiast całej strony.
Jak sprawdza to SiteScan
Skaner szuka obu nagłówków w HTML strony głównej i wymienia znalezione. Do zielonego wiersza wystarczy jeden. Bez żadnego wiersz pokazuje „Brak” i jest żółty: każde odświeżenie przesyła cały HTML, nawet gdy nic się w nim nie zmieniło. Jeśli dodatkowo brakuje Cache-Control, raport osobno zgłasza, że każda wizyta pobiera stronę w całości.
Jak je włączyć
Pliki statyczne zwykle dostają oba nagłówki automatycznie: nginx i Apache domyślnie wysyłają ETag i Last-Modified. Znikają one przy stronach dynamicznych. Większość frameworków ma do tego ustawienie lub middleware — np. ETag w Express czy conditional GET w Django. Za load balancerem dopilnuj, by ETag nie różnił się między serwerami dla tej samej treści, inaczej 304 nigdy nie nastąpi. Zobacz też artykuł o cache’owaniu HTTP.
Sprawdź ten element na swojej stronie
Uruchom bezpłatny skan: raport pokaże ten wiersz dla Twojej domeny razem z pozostałymi kontrolami audytu.
Więcej w sekcji „Dostarczanie i reputacja”
Co sprawdza SiteScan
Certyfikat TLS
- Ważność certyfikatu SSL/TLS
- Przestarzałe wersje TLS (1.0 i 1.1)
- Łańcuch certyfikatów TLS
- Wystawca certyfikatu TLS
- Algorytm podpisu certyfikatu
Rejestracja domeny
- Termin rejestracji domeny
- Zarejestrowana nazwa domeny
- Rejestrator domeny
- Data rejestracji domeny
- Data ostatniej zmiany domeny
- Statusy domeny w rejestrze (EPP)
- Blokada transferu domeny
- Kontakt abuse rejestratora
- Źródło danych RDAP i WHOIS
Indeksowanie
- Plik robots.txt
- CSS i JS zablokowane w robots.txt
- Mapa witryny XML (sitemap.xml)
- Indeks map witryny
- Obce adresy w mapie witryny
- Daty lastmod w mapie witryny
- Niedziałające adresy w mapie witryny
- Kanał RSS i Atom
Adresy i przekierowania
- Przekierowanie z HTTP na HTTPS
- Przekierowanie www i bez www
- Długość łańcucha przekierowań
- Obsługa błędu 404 i miękki 404
Nagłówki bezpieczeństwa
- Nagłówki bezpieczeństwa HTTP i ocena
- Nagłówek Strict-Transport-Security (HSTS)
- Nagłówek Content-Security-Policy (CSP)
- X-Content-Type-Options: nosniff
- X-Frame-Options i ochrona przed clickjackingiem
- Nagłówek Referrer-Policy
- Nagłówek Permissions-Policy
- Lista HSTS preload
- CORS i odczyt cross-origin
- Metoda HTTP TRACE
Dostarczanie i reputacja
- Nagłówek Cache-Control dla HTML
- Rewalidacja przez ETag i Last-Modified
- Obsługa HTTP/3 i QUIC
- Wersje oprogramowania w nagłówkach serwera
- Sprawdzenie list blokujących DNS (DNSBL)
Linki wewnętrzne
Odsłonięte pliki
- Odsłonięte pliki .env, .git i kopie
- Listowanie katalogów na serwerze
- Publiczne mapy źródeł JavaScript
- Odsłonięte punkty końcowe WordPressa
Pliki służbowe
- Plik security.txt
- Plik llms.txt dla asystentów AI
- Plik llms-full.txt
- Plik ads.txt dla reklam
- Plik humans.txt
- Adres /.well-known/change-password
DNS i poczta
- Rekordy MX (serwery poczty)
- Rekord SPF
- Rekord i polityka DMARC
- Podpisywanie strefy DNSSEC
- Rekord CAA
- Redundancja serwerów nazw
- Obsługa IPv6 (rekord AAAA)
- Polityka MTA-STS
- Rekord raportowania TLS-RPT
- Rekord BIMI (logo w poczcie)
- Rekord wildcard w DNS
- Wiszący CNAME i przejęcie subdomeny
Prywatność i zgoda
- Skrypty analityczne i śledzące
- Baner zgody na cookies
- Polityka prywatności
- Regulamin serwisu
- Dane wydawcy (Impressum)
- Deklaracja dostępności
Core Web Vitals
- Wynik wydajności Lighthouse
- Largest Contentful Paint (LCP)
- Cumulative Layout Shift (CLS)
- Interaction to Next Paint (INP)
- Dane terenowe CrUX a dane laboratoryjne