ARK. D07Parametr monitoringuDostępność · lista 50 parametrów

Długość łańcucha przekierowań

ważność średniamierzonysposób redirect

Liczba przeskoków zanim żądanie trafi na właściwy adres. Więcej niż 2 to spowolnienie i ryzyko pętli.

Ten sam test co przekierowanie HTTP → HTTPS. Długi łańcuch to znacznik ostrzeżenia w wyniku, bez osobnego ustalenia i bez zmiany statusu.

ARK. 1

WIKI

artykuł z 16.09.2026 · źródeł 10

Długość łańcucha przekierowań to parametr monitoringu stron internetowych, który liczy przeskoki, czyli kolejne odpowiedzi przekierowujące, zanim żądanie dotrze do adresu, pod którym serwer zwraca właściwą odpowiedź. Wynikiem jest liczba przeskoków porównana z progiem. Łańcuch, który nie kończy się w granicach limitu klienta, jest nieodróżnialny od pętli. Każdy przeskok to osobna odpowiedź z klasy 3xx z nagłówkiem Location, pod który klient wysyła kolejne żądanie [1].

Jak działa

Przeglądarka, która dostaje przekierowanie, od razu wczytuje adres z nagłówka Location. Poza niewielkim kosztem dodatkowej wymiany z serwerem użytkownik zwykle tego nie zauważa [3]. Jeśli nowy adres także przekierowuje, powstaje łańcuch. Pętla to sytuacja, w której po wykonanym przekierowaniu następują kolejne i żadna strona nigdy nie zostaje znaleziona [3].

RYS. 1.1Łańcuch trzech przeskoków

Każdy przeskok dodaje pełną wymianę żądanie–odpowiedź. Dokumentacja Lighthouse podaje, że taka dodatkowa podróż przez sieć może opóźnić wczytanie zasobu o setki milisekund [7]. Łańcuch nie jest więc błędem sam w sobie, ale jego koszt rośnie z każdym przeskokiem.

Typowy łańcuch powstaje z warstw reguł, z których każda robi jedną normalizację. Dokumentacja Apache opisuje osobno wymuszanie jednej nazwy hosta przez Redirect w hoście wirtualnym dla nazw niekanonicznych [8] i ujednolicanie ukośnika końcowego przekierowaniem 301 [8]. Dla prawdziwych katalogów ukośnik dopisuje już moduł mod_dir, gdy włączona jest domyślna dyrektywa DirectorySlash [8]. WordPress ma własną funkcję redirect_canonical(), która przekierowuje przychodzące linki na właściwy adres wynikający z ustawień witryny, w tym na wybraną formę z www albo bez [9]. Jej przekierowania mają kod 301 [9]. Jeśli reguła serwera, aplikacja i jej dodatki albo pośrednik przed serwerem normalizują adres niezależnie od siebie, przeskoki się sumują.

RYS. 1.2Od długiego łańcucha do jednego przeskoku

Standardy i specyfikacje

  • RFC 9110 mówi, że klient powinien wykrywać cykliczne przekierowania i przerywać je [1]. Wcześniejsza wersja specyfikacji zalecała najwyżej pięć przekierowań, a autorzy treści powinni pamiętać, że część klientów może mieć taki stały limit [1].
  • Fetch Standard (WHATWG), który opisuje pobieranie zasobów w przeglądarkach, każe zwrócić błąd sieci, gdy przychodzi kolejne przekierowanie, a licznik przekierowań żądania wynosi już 20 [2].
  • Chromium przy wyczerpanym limicie przekierowań odmawia wykonania kolejnego i zwraca błąd ERR_TOO_MANY_REDIRECTS [4].
  • Roboty Google domyślnie wykonują do 10 przeskoków przekierowań. Poszczególne produkty mogą mieć inne limity, a narzędzia inspekcji Google w ogóle nie podążają za przekierowaniami [5]. Treść otrzymana z adresu przekierowującego jest ignorowana, przetwarzana jest treść adresu docelowego [5].
  • Lighthouse oznaczał jako niezaliczony audyt strony z dwoma lub więcej przekierowaniami. Od wersji 13 audyt jest częścią analizy opóźnienia żądania dokumentu [7].

Zagrożenia i skutki

Pętla przekierowań. Najczęściej jest to problem serwera. Jeśli serwer ją wykryje, zwraca błąd 500 [3]. Pętla rozłożona na kilka serwerów, z których żaden nie widzi całości, zostaje wykryta dopiero przez przeglądarkę, która wyświetla komunikat o błędzie, a użytkownik niewiele może zrobić [3].

Proxy z TLS. Jeśli WordPress działa za reverse proxy obsługującym SSL, a sam nie ma SSL, wymuszanie HTTPS w panelu administracyjnym (FORCE_SSL_ADMIN) początkowo wpędza żądania w nieskończoną pętlę przekierowań. Rozwiązaniem jest odczyt nagłówka HTTP_X_FORWARDED_PROTO [10]. Podobnie w Apache zmienna %{HTTPS} za takim pośrednikiem zawsze ma wartość off [8].

Indeksowanie. Raport indeksowania stron w Search Console zgłasza błąd przekierowania, gdy łańcuch był zbyt długi, wystąpiła pętla, adres po przekierowaniach przekroczył maksymalną długość albo w łańcuchu był pusty lub błędny adres [6].

Wydajność. Opóźnienie dotyczy każdego wejścia z adresu, który nie jest docelowy. Lighthouse zaleca kierowanie linków od razu na aktualne adresy zasobów i unikanie przekierowań w zasobach krytycznej ścieżki renderowania [7].

Przykłady

ŁańcuchPrzeskokiSkutek
http://domena/https://www.domena/1jedno przekierowanie, próg Lighthouse nie jest przekroczony [7]
http://https://www2dwa lub więcej przekierowań — audyt Lighthouse niezaliczony [7]
http://https://www → ukośnik3trzy dodatkowe wymiany, każda może kosztować setki milisekund [7]
powyżej 10 przeskoków11+ponad domyślny limit robotów Google [5]; w raporcie indeksowania błąd przekierowania [6]
ponad 20 przekierowań21+przeglądarka zgodna z Fetch zwraca błąd sieci [2], Chromium ERR_TOO_MANY_REDIRECTS [4]
adres A → B → Abez końcaserwer może zwrócić 500, inaczej komunikat pętli w przeglądarce [3]
TAB. 1.1Przypisy10
  1. [1] RFC 9110 — HTTP Semantics · IETF
  2. [2] Fetch Standard — HTTP-redirect fetch · WHATWG
  3. [3] Redirections in HTTP · MDN Web Docs
  4. [4] net/url_request/url_request_job.cc · The Chromium Project
  5. [5] HTTP status codes, network and DNS errors — Google crawlers · Google for Developers
  6. [6] Page indexing report · Search Console Help
  7. [7] Avoid multiple page redirects — Lighthouse · Chrome for Developers
  8. [8] Redirecting and Remapping with mod_rewrite — Apache HTTP Server 2.4 · Apache Software Foundation
  9. [9] redirect_canonical() — WordPress Code Reference · WordPress.org
  10. [10] HTTPS — Advanced Administration Handbook · WordPress.org
ARK. 2

STATS

wyniki z systemu · tylko liczby zbiorcze
TAB. 2.1Odczyty per stronaostatni dzień pomiaru 21.09.2026
Stron zmierzonych
204w ostatnim dniu pomiaru
OK
291odczytów
Fail
47odczytów
Nie dało się sprawdzić
6timeout, blokada, limit zapytań
Udział fail
13,9%bez „nie dało się”
TAB. 2.2Od początkuod 17.09.2026
Stron łącznie
206choć jeden odczyt
OK
1690odczytów
Fail
246odczytów
Nie dało się sprawdzić
30timeout, blokada, limit zapytań
Udział fail
12,7%bez „nie dało się”
RYS. 2.130 dnicheck_type: redirect
23.08.202607.09.202621.09.2026
Odczyty parametru Długość łańcucha przekierowań, 30 dni · wysokość słupka = liczba odczytów dnia, warstwy od dołu: fail, nie dało się sprawdzić, ok · dni bez odczytu: 25 · dni ze stanem „fail”: 17.09.2026, 18.09.2026, 19.09.2026, 20.09.2026, 21.09.2026 · dni ze stanem „nie dało się sprawdzić”: 17.09.2026, 18.09.2026, 19.09.2026, 20.09.2026, 21.09.2026
Odczyty parametru Długość łańcucha przekierowań, 30 dni
Dzieńfailnie dało się sprawdzićok
23.08.20260 odczytów0 odczytów0 odczytów
24.08.20260 odczytów0 odczytów0 odczytów
25.08.20260 odczytów0 odczytów0 odczytów
26.08.20260 odczytów0 odczytów0 odczytów
27.08.20260 odczytów0 odczytów0 odczytów
28.08.20260 odczytów0 odczytów0 odczytów
29.08.20260 odczytów0 odczytów0 odczytów
30.08.20260 odczytów0 odczytów0 odczytów
31.08.20260 odczytów0 odczytów0 odczytów
01.09.20260 odczytów0 odczytów0 odczytów
02.09.20260 odczytów0 odczytów0 odczytów
03.09.20260 odczytów0 odczytów0 odczytów
04.09.20260 odczytów0 odczytów0 odczytów
05.09.20260 odczytów0 odczytów0 odczytów
06.09.20260 odczytów0 odczytów0 odczytów
07.09.20260 odczytów0 odczytów0 odczytów
08.09.20260 odczytów0 odczytów0 odczytów
09.09.20260 odczytów0 odczytów0 odczytów
10.09.20260 odczytów0 odczytów0 odczytów
11.09.20260 odczytów0 odczytów0 odczytów
12.09.20260 odczytów0 odczytów0 odczytów
13.09.20260 odczytów0 odczytów0 odczytów
14.09.20260 odczytów0 odczytów0 odczytów
15.09.20260 odczytów0 odczytów0 odczytów
16.09.20260 odczytów0 odczytów0 odczytów
17.09.202639 odczytów1 odczyt166 odczytów
18.09.202636 odczytów4 odczyty166 odczytów
19.09.202685 odczytów13 odczytów532 odczyty
20.09.202639 odczytów6 odczytów535 odczytów
21.09.202647 odczytów6 odczytów291 odczytów
TAB. 2.4Przebiegi z tym sposobem sprawdzeniaod 09.09.2026
Przebiegów
60sposób redirect
W 30 dni
60przebiegów
Ostatni
19.09.2026start przebiegu
Stron w przebiegach
20461 przebiegów bez liczby stron
ARK. 3

CARD

karta z kodu CREATO_PING, odczyt 16.09.2026
RYS. 3.1Droga parametru przez system: Długość łańcucha przekierowań
TAB. 3.1Pomiarpliki: 4
Obszar i ważnośćDostępność · średnia (D07)
Workflow i częstotliwośćcreato_ping_avail_v2 działa na LAB247cron co 24 h, osobno T1–T4 · Strony w stanie DOWN i WARNING dostają dodatkowy odczyt co 6 h (timer availability_recheck poza n8n). Od 2026-09-16 sposób ssl daje odczyt ssl_expiry (dni do wygaśnięcia certyfikatu); od 2026-09-17 odczyty trafiają do check_results.
Sonda i helpersposób redirect · CREATO_PING/helpers/redirect_check.py
Testy
  1. Ten sam odczyt co Przekierowanie HTTP → HTTPS; przeskoki = liczba odpowiedzi przekierowujących w historii żądania.
  2. Flaga liczona tylko, gdy adres końcowy jest na https://; przy fail flaga = false, przy timeout i błędzie sieci jej brak.
  3. Przy fladze wynik zostaje ok, a pole błędu dostaje tekst „redirect chain too long”.
  4. Liczony jest tylko łańcuch od http://domena; wejście od https:// nie jest mierzone.
Typ wynikuflaga długiego łańcucha i liczba przeskoków w wyniku sprawdzenia redirect — bez własnego odczytu i ustalenia
Jednostkaliczba przeskoków od http://domena do adresu końcowego
Próg i regułaPrzeskoki > 2 = znacznik (CREATO_PING_REDIRECT_MAX_HOPS, domyślnie 2, minimum 1). Powyżej 5 przekierowań znacznika nie ma — jest fail parametru Przekierowanie HTTP → HTTPS.
Gdzie leżą pokrętłaCREATO_PING/helpers/redirect_check.py → CREATO_PING_REDIRECT_MAX_HOPS (domyślnie 2)CREATO_PING/helpers/redirect_check.py → _MAX_REDIRECTS (5)
Retencja odczytówOdczyt sprawdzenia redirect w tabeli check_results bazy LAB247, ale znacznik przeżywa tylko jako tekst w polu błędu; liczby przeskoków nie zapisujemy.
Znane rozbieżności
  1. Katalog obiecuje znacznik ostrzeżenia w wyniku — jest w helperze, ale przy przekazaniu do zapisu flaga i liczba przeskoków giną; po drugiej próbie z UA przeglądarki ginie też tekst błędu.
  2. Nic nie czyta znacznika: typ redirect_chain_long w pro_scoring.py nie ma nadawcy, a rejestr zdrowia sprawdzeń oznacza parametr jako niewdrożony.
  3. Opis mówi o spowolnieniu, ale czas nie jest mierzony.
  4. Łańcuch od https:// (np. https → www → ukośnik) nie jest liczony.
  5. Próg liczy także konieczny przeskok http → https: znacznik dopiero od 3 przeskoków, a Lighthouse nie zalicza już przy 2 przekierowaniach.
kandydaci do pętli: kod a opis parametru albo specyfikacja
Karta przepisana zCREATO_PING/helpers/redirect_check.py · CREATO_PING/tools/avail_writer_input.py · CREATO_PING/helpers/pro_scoring.py · CREATO_PING/helpers/check_health.py · odczyt 16.09.2026
TAB. 3.2Co oznacza failtypów ustaleń: 0

Brak skutku: wynik zostaje ok, nie powstaje ustalenie, status strony się nie zmienia. Znacznik nie dociera do zapisu jako pole — zostaje tylko tekst w polu błędu odczytu ok.

Parametr nie otwiera osobnego ustalenia — wynik zostaje znacznikiem w odczycie.

ARK. 4

LOOP

bez pętli
RYS. 4.1Pętla parametru — sześć etapów
TAB. 4.1Trafność, 30 dnialarmy · prawdziwe · fałszywe · bez rozstrzygnięcia

Trafności jeszcze nie liczymy: zamknięcie subtaska nie niesie dziś werdyktu (prawdziwy / fałszywy / nie dało się sprawdzić). Cztery liczby pojawią się, gdy każde zamknięcie dostanie werdykt — to warunek startu pętli 1.

TAB. 4.2Pętle

Ten parametr nie przeszedł jeszcze żadnej pętli. Kolejność po pierwszych pięciu grupach ustali miara trafności.

Blog 24/7
20.09Zastrzeżony PESEL: zmiana raz na 30 minut, blokada przy wypłaciedobreprogramy.pl20.09Fałszywe SMS-y od GITD o mandacie za autostradę wyłudzają dane kartyinstalki.pl20.09Pakiet npm indexed-btree omija blokadę skryptów instalacyjnychbleepingcomputer.com19.09SolarWinds łata CVE-2026-28326 w Access Rights Manager, zdalny kod bez logowaniathehackernews.com19.09Orkes Conductor: luka CVE-2026-58138 atakowana w sieci, poprawka w wersji 3.30.2thehackernews.com19.09Trzy luki jądra Linux w katalogu CISA KEV, Red Hat potwierdza aktywne atakithehackernews.com18.09Publiczne exploity na cztery luki jądra Linux dają lokalnie uprawnienia rootthehackernews.com18.09Brevo: skradziony klucz API Cloudflare i skrypty ClickFix na stronach klientówbleepingcomputer.com18.09WaterPlum z Korei Północnej zainfekowała 30 000 urządzeń w 100 krajachtherecord.media18.09Jedna zgoda OAuth daje napastnikowi dostęp do poczty i plików mimo MFAdarkreading.com