Konfiguracja wstępnego ładowania cache
Najpierw pomiar: czy wywołanie własne działa?
Rozgrzewanie oznacza, że twój serwer WWW wywołuje własne strony. Czy to u ciebie działa, odpowiada przycisk „Przetestuj wywołanie własne”: pobiera dokładnie stronę główną i podaje kod statusu, przesłany rozmiar oraz czas odpowiedzi. Jeśli wraca HTTP 401 albo 403, stoi przed nią zwykle blokada dostępu — Basic Auth przed witryną staging albo firewall. Jeśli test wpadnie w swój limit czasu 10 sekund, serwer często blokuje sam siebie, bo wolny jest tylko jeden proces roboczy PHP, a ten jest już zajęty twoim kliknięciem. Sprawdzane są przy tym dwa dalsze warunki: cache stron musi być włączony, a katalog cache’u zapisywalny dla serwera WWW. Dopóki jednego z nich brakuje, podgląd i start pozostają wyłączone, a powód stoi pod nimi otwartym tekstem.
Skąd pochodzą adresy
Są dwa źródła. „Sitemap” obejmuje całą witrynę; bez wpisu brana jest /wp-sitemap.xml, Yoast i Rank Math odkładają swoją pod /sitemap_index.xml. Indeks sitemap jest śledzony o jeden poziom w głąb, najwyżej przez 25 map częściowych. Wpisać można tylko adresy tej witryny, obcy host jest odrzucany komunikatem o błędzie. Jeśli nie wróci ani jeden adres, komunikat podaje powód — najczęstszy: gdy w Ustawienia › Czytanie stoi „Proś wyszukiwarki o nieindeksowanie tej witryny”, WordPress wyłącza swoją sitemap i dostarcza zamiast niej stronę 404, i to z kodem statusu 200. Kto patrzy tylko na kod, uzna to za sukces. „Ostatnio zmienione treści” nie potrzebuje sitemap: strona główna, strona wpisów oraz ostatnio edytowane wpisy i strony, wstępnie ustawione 50, do ustawienia między 5 a 500. W codziennej pracy jest to często trafniejsze źródło, bo to, co właśnie zostało zredagowane, wyleciało z cache’u i zostanie wywołane jako następne.
Przeczytaj podgląd
„Sprawdź kolejkę” tylko liczy — do tego momentu nic nie jest zmieniane. Zestawienie czysto rozdziela: znalezione adresy, powtórzone, te na obcych hostach, te, które nigdy nie trafiają do cache’u (z maksymalnie ośmioma przykładami wraz z uzasadnieniem), te, które już leżą świeże w cache’u. Na samym dole stoi liczba, która rzeczywiście zostałaby pobrana, a do tego pierwszych dwanaście adresów do kontroli. Jeśli pojawi się wiersz „powyżej górnej granicy”, reszta nie mieści się w jednym przebiegu: wstępnie ustawione jest 300 adresów, dozwolone 10 do 5000. Poprzez „Zakres” decydujesz między „tylko brakujące strony” a „utwórz wszystkie na nowo”. Przy ponownym tworzeniu nic nie ginie — plik cache’u powstaje sam z siebie przy każdym wywołaniu. Przy starcie kolejka jest zresztą budowana na nowo, a nie przejmowana z listy z podglądu; między sprawdzeniem a kliknięciem mogą minąć minuty.
Porcje, limity czasu i kto napędza przebieg
Jeden krok pobiera wstępnie ustawione 5 adresów (do ustawienia 1 do 20) i oddaje sterowanie najpóźniej po 20 sekundach, żeby żadne wywołanie nie wpadło w limit czasu serwera. Dla pojedynczego adresu obowiązuje dodatkowo własny limit czasu, wstępnie ustawiony na 10 sekund, do ustawienia między 3 a 30; potem adres liczy się jako nieudany, a przebieg idzie dalej. Na słabym sprzęcie wielkość porcji ustawia się niżej, a nie wyżej: przebieg trwa wtedy dłużej, ale witryna pozostaje obok tego używalna. Kroki napędzane są przez przeglądarkę, dopóki strona zarządzania jest otwarta, a potem przez WP-Cron — we własnym wywołaniu, na które nie czeka żaden gość. Jeśli ustawione jest DISABLE_WP_CRON, po zamknięciu karty praca idzie dalej tylko wtedy, gdy na serwerze prawdziwy cron wywołuje wp-cron.php. Zawsze pracuje tylko jeden krok naraz; blokada na 120 sekund zapobiega temu, żeby dwie otwarte karty albo przeglądarka i cron podwójnie pobierały te same adresy i wielokrotnie liczyły te liczby. „Przerwij” działa między dwoma adresami, a nie dopiero na końcu porcji; już utworzone pliki cache’u pozostają ważne.
Odczytaj wynik i uruchamiaj przebiegi automatycznie
Każde pobranie kończy się dokładnie w jednym z trzech wierszy. „Odłożone w cache’u” znaczy: po pobraniu plik rzeczywiście tam leżał — sprawdzany jest system plików, a nie kod statusu. „Dostarczone, ale nieumieszczone w cache’u” znaczy: strona wróciła, ale nie została zapisana; wtedy z reguły działa reguła wykluczenia cache’u stron i to tam należy jej szukać, a nie tutaj. „Nieudane” to przekroczenia czasu, kody błędów i przekierowania; przekierowania świadomie nie są śledzone, bo do sitemap należy adres docelowy. Protokół trzyma ostatnie 40 pobrań, tabela pokazuje z nich 25 z adresem, kodem statusu, czasem trwania i wynikiem. Własne pobrania noszą oznaczenie i dlatego nie wchodzą do współczynnika trafień cache’u — inaczej statystyka rosłaby, choć żaden gość nic by z tego nie miał. Dwa przełączniki uruchamiają przebiegi bez ciebie: po wyczyszczeniu cache’u i według harmonogramu, co godzinę, dwa razy dziennie albo codziennie (wstępnie ustawione: codziennie). Oba startują tylko wtedy, gdy nie brakuje żadnego z warunków.