Opóźnione odświeżanie meta
Silktide sprawdza strony pod kątem kodu, który automatycznie ponownie ładuje stronę lub przekierowuje użytkowników na inną stronę po odliczaniu czasu. Użytkownicy nie mają możliwości wstrzymania ani wydłużenia tego odliczania, dlatego strony nie powinny go używać.
Odpowiada za to tag meta refresh z opóźnieniem:
<!-- Problem: przekierowuje po 5 sekundach, czego użytkownicy nie mogą kontrolować -->
<meta http-equiv="refresh" content="5;url=https://example.com/new-page">
<!-- Problem: ponownie ładuje stronę co 30 sekund -->
<meta http-equiv="refresh" content="30">
Dlaczego to jest ważne
Strona, która zmienia się zgodnie z własnym zegarem, utrudnia korzystanie osobom, które czytają powoli, używają lub powiększają ekran. Przekierowanie może nastąpić, zanim skończą czytać, a ponowne załadowanie może usunąć częściowo wypełniony formularz i przenieść użytkownika czytnika ekranu z powrotem na początek strony. Ponieważ opóźnienie jest ustalone w kodzie strony, żaden użytkownik nie może go wydłużyć, aby dostosować je do swojego tempa.
Opóźnione przekierowania dezorientują również wyszukiwarki, które obsługują je niekonsekwentnie w porównaniu z prawidłowymi przekierowaniami po stronie serwera.
Jak to naprawić
- W przypadku przekierowań zastąp meta refresh przekierowaniem po stronie serwera (odpowiedź HTTP 301 lub 302), które następuje natychmiast i nie wymaga odliczania czasu. Większość platform hostingowych i systemów CMS oferuje ustawienia przekierowań.
- Jeśli przekierowanie serwerowe nie jest możliwe, ustaw opóźnienie na
0, aby przekierowanie było natychmiastowe — natychmiastowe przekierowanie przechodzi tę kontrolę. - W przypadku automatycznie odświeżanej treści usuń odświeżanie i aktualizuj treść na miejscu za pomocą , najlepiej z kontrolką umożliwiającą użytkownikom wstrzymanie aktualizacji.
Jak Silktide to testuje
- Znajduje każdy tag
<meta http-equiv="refresh">na każdej stronie. - Odczytuje liczbę sekund z jego atrybutu
content. - Zgłasza tag, jeśli opóźnienie jest większe od zera, niezależnie od tego, czy ponownie ładuje tę samą stronę, czy przekierowuje na inną.
- Tagi z opóźnieniem wynoszącym zero sekund (natychmiastowe przekierowanie) nie są zgłaszane.