Procédure
Warto wiedzieć, że czas ładowania Twojej strony ma kluczowe znaczenie dla zapewnienia jej sukcesu. Na przykład dla firmy daje to pierwsze wrażenie odwiedzającym. Ponadto, zbyt długie ładowanie jej zawartości może mieć wpływ na pozycjonowanie Twojej strony w głównych wyszukiwarkach i nie pozwoli na wystarczającą ekspozycję, aby mogła ona funkcjonować.
Nie istnieje żaden próg, którego nie należy przekraczać w odniesieniu do czasu ładowania stron internetowych. Jednak czas ładowania większości stron internetowych jest krótszy niż trzy sekundy.
Narzędzie Fastest Cache to system zaprojektowany i opracowany przez LWS, umożliwiający optymalizację wydajności ładowania Twojej strony internetowej dzięki zastosowaniu mechanizmów cachowania stron, skonfigurowanych na poziomie serwera WWW. Narzędzie łączy technologie oferowane przez NGINX i Varnish.
NGINX to serwer WWW nastawiony na wydajność, pozwalający obsłużyć znacznie większą liczbę żądań w porównaniu z tradycyjnym serwerem WWW Apache HTTPd Server (zobacz nasz wpis na blogu zatytułowany “Apache VS Nginx : Test de performance”). LWS wykorzystuje NGINX, aby móc odbierać z góry dużą liczbę żądań HTTP bez utraty wydajności. Następnie może on zostać skutecznie przefiltrowany, aby wyeliminować złośliwe żądania (zob. LWS Protect) oraz przekierować żądania HTTP do serwera cache Varnish lub LiteSpeed, zależnie od wyboru klienta w jego panelu hostingowym.
Varnish to usługa HTTP implementująca mechanizm cachowania stron, umożliwiający zapisanie wyniku żądania HTTP w pamięci RAM.
Przy odpowiedniej konfiguracji NGINX umożliwia obsługę większej liczby żądań na Twojej stronie internetowej, a Varnish pozwala jednocześnie przyspieszyć czas ładowania strony oraz zmniejszyć zużycie CPU i pamięci RAM.
Działanie bez cache
Aby lepiej zrozumieć działanie, najpierw zobaczymy, jak wygląda to bez systemu cache, aby odwiedzający mógł zobaczyć Twoją stronę.
Działanie z modułem Fastest Cache
Gdy Fastest Cache jest aktywowany, serwer cache zostaje wprowadzony pomiędzy odwiedzającego a serwer WWW.
Celem jest zmniejszenie liczby koniecznych wykonań skryptów poprzez zachowanie wyniku wykonania w pamięci dla kolejnych żądań wymagających tej samej odpowiedzi. Pozwala to uniknąć wielokrotnego uruchamiania tego samego skryptu w celu uzyskania tego samego wyniku.
W ten sposób eliminujemy czas oczekiwania na wykonanie skryptu z czasu ładowania strony, a przy okazji oszczędzamy zasoby zużywane podczas wykonywania skryptu.
1. Odwiedzający żąda strony od serwera WWW. Przykład: index.php
2. Fastest Cache sprawdza, czy odpowiedź może zostać pobrana z cache:
Widać, że gdy strona jest zapisana w pamięci cache, przetwarzanie przez serwer WWW oraz wykonanie skryptu zostają pominięte, co znacząco skraca czas wykonania i zużycie zasobów.
Fastest Cache opiera się na wielu sygnałach, aby zdecydować o przyjętym zachowaniu cachowania:
Fastest Cache wykrywa również niektóre CMS-y oraz rozszerzenia / moduły i implementuje specyficzne zachowania cachowania związane z tymi narzędziami.
Fastest Cache cache'uje tylko metody HTTP GET i HEAD.
Gdy odwiedzający wchodzi na URL, Fastest Cache normalizuje żądanie, usuwając ciasteczka i parametry URL, które nie wpływają na końcowy rendering skryptu po stronie serwera (parametry URL Google Analytics, ciasteczka związane ze skryptami Javascript ...).
Po normalizacji żądanie jest sprawdzane pod kątem uwierzytelniania HTTP (nagłówek żądania HTTP Authorization) lub obecności pozostałych ciasteczek (nagłówek żądania HTTP Cookie). Jeśli tak, żądanie zostanie odesłane do serwera WWW bez przechodzenia przez system cache.
Jeśli żądanie nie ominęło cache w momencie jego odbioru, Fastest Cache ponownie analizuje dostarczoną odpowiedź HTTP od serwera WWW i sprawdza, czy można ją zachować w cache do przyszłego użycia.
Jeśli odpowiedź HTTP zawiera nagłówek odpowiedzi HTTP Cdn-Cache-Control, Fastest Cache natychmiast respektuje to, co zostało w nim określone:
Jeśli Cdn-Cache-Control jest ustawiony z Set-Cookie, Cdn-Cache-Control zostanie zignorowany, a odpowiedź nie zostanie zachowana w cache.
Pliki statyczne odpowiadające motywom, wtyczkom, uploads i core WordPress są automatycznie przechowywane w cache przez 30 dni.
Jeśli odpowiedź HTTP pochodzi z systemu cache stron LWS Optimize, WP Fastest Cache, Airlift, W3 Total Cache, WP Rocket, WP Optimize lub FastPixel, jest ona przechowywana w cache przez 7 dni. Te wtyczki WordPress same przeprowadzą czyszczenie cache Varnish, gdy usuwają cache strony.
Jeśli odpowiedź HTTP pochodzi z katalogu /_next/static, jest ona również przechowywana w cache przez 7 dni.
Jeśli odpowiedź HTTP zwraca kod HTTP 404, jest ona przechowywana w cache przez 900 sekund. Pozwala to ograniczyć liczbę niepotrzebnych zapytań do bazy danych MySQL, zwłaszcza w przypadku WordPressa.
Jeśli odpowiedź HTTP zwraca kod HTTP 500, odpowiedź nigdy nie jest przechowywana w cache.
Jeśli odpowiedź HTTP zawiera ciasteczko (nagłówek odpowiedzi HTTP Set-Cookie), odpowiedź nigdy nie jest przechowywana w cache.
Jeśli odpowiedź HTTP zawiera nagłówek odpowiedzi HTTP Cache-Control lub Surrogate-Control, Fastest Cache stosuje oczekiwane zachowanie cache dla przeglądarek. Jeśli te nagłówki są dostarczone wraz z Cdn-Cache-Control, Fastest Cache ignoruje Cache-Control i Surrogate-Control na rzecz Cdn-Cache-Control. Pozwala to na przykład wymusić na przeglądarce wysłanie żądania HTTP przy każdej wizycie w celu wyświetlenia listy artykułów, bez konieczności usuwania listy artykułów z cache serwera.
Fastest Cache jest dostępny jako ikona w cPanelu w sekcji “Performance”.
![]()
Po wejściu do interfejsu na liście wyświetlają się domena główna, dodatkowe domeny i subdomeny.

Domyślnie system cache wybiera tryb « Użycie ogólne », który nadaje się do zastosowań ogólnych. Istnieją jednak inne tryby:
Tryb deweloperski : identyczny z wyłączeniem cache, pozwala to ominąć system cache w okresie prac rozwojowych.
WordPress : tryb cache bardziej dostosowany do WordPressa, w którym zarządzanie katalogami (wp-content, wp-admin, …) oraz specyficznymi ciasteczkami WordPressa jest ulepszone.
Prestashop : tryb cache bardziej dostosowany do Prestashop, w którym zarządzanie katalogami i ciasteczkami jest ulepszone.

Poza interfejsem cPanel umożliwiającym czyszczenie cache, możliwe jest ręczne wyczyszczenie cache z terminala SSH konta cPanel lub ze skryptu hostowanego na serwerze.
Uruchamiane z Twojego hostingu (skrypt PHP Twojej strony, zadanie Cron lub terminal SSH), metody te nie wymagają ani tokena API, ani identyfikatora : Fastest Cache bezpośrednio akceptuje metody HTTP PURGE.
Wyczyszczenie cache strony:
curl -X PURGE https://mon-site-web.com/mapage.phpPozwoli to wyczyścić cache adresu URL https://mon-site-web.com/mapage.php.
Wyczyszczenie cache katalogu:
curl -X PURGE 'https://mon-site-web.com/wp-content/uploads/.*'Pozwoli to wyczyścić wszystkie cache adresów URL zaczynających się od 'https://mon-site-web.com/wp-content/uploads/'
Wyczyszczenie cache witryny
curl -X PURGE https://mon-site-web.com/.*W przypadku wszystkich trzech poleceń możliwe są trzy odpowiedzi:
Kod HTTP 200 : czyszczenie przebiegło pomyślnie, bez błędów.
Kod HTTP 4xx : czyszczenie nie jest dozwolone.
Kod HTTP 5xx : wystąpił błąd.
Poniższy skrypt czyści cache całej witryny albo tylko niektórych stron. Skopiuj go do pliku purge-cache.php na swoim hostingu, a następnie wpisz swoją domenę w $site. Aby czyścić tylko wybrane strony, wpisz je w $pages.
'PURGE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 20,
]);
curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return $code;
}
if (empty($pages)) {
echo date('Y-m-d H:i:s') . ' purge complete : HTTP ' . purger($site . '/.*') . PHP_EOL;
}
else {
foreach ($pages as $page) {
echo date('Y-m-d H:i:s') . ' ' . $page . ' : HTTP ' . purger($site . $page) . PHP_EOL;
}
}Aby uruchamiać go automatycznie, na przykład każdej nocy, utwórz zadanie Cron, które wykonuje ten plik za pomocą PHP. Jeśli chcesz po prostu wyczyścić cały cache, zadanie Cron może również bezpośrednio wykonać:
curl -s -o /dev/null -X PURGE 'https://mon-site-web.com/.*'Większość wtyczek/modułów posiadających integrację z Varnish jest zgodna z wewnętrznym mechanizmem czyszczenia Fastest Cache.
Oto kilka przetestowanych i sprawdzonych, zgodnych wtyczek:
Stan HTTPS i porty wskazane w Apache są wstrzykiwane do środowiska i zazwyczaj nie wymagają żadnych dodatkowych zmian.
Jeśli jednak wykrywanie HTTPS nie działa z Fastest Cache, może to powodować nieskończone pętle przekierowań. W takim przypadku konieczna będzie modyfikacja danych wykrywania.
Zaufane nagłówki HTTP używane do wykrywania to:
Zatem jeśli używasz następującego przekierowania HTTPS z .htaccess:
RewriteEngine On
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]i jeśli to nie działa, możesz zastąpić zmienną SERVER_PORT przez X-Forwarded-Proto :
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} !on
RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R]CDN-y typu CloudFlare mogą filtrować żądania HTTP, które mogłyby blokować żądania “PURGE” używane przez Fastest Cache do czyszczenia cache. Zaleca się wówczas podanie adresu IP serwera podczas czyszczenia za pomocą curl, aby ominąć CDN-y podczas operacji czyszczenia:
curl -X PURGE --resolve mon-site-web.com:443:IP_DU_SERVEUR 'https://mon-site-web.com/.*'CDN-y mogą również zawierać dodatkową warstwę cache, którą należy obsługiwać niezależnie od cache dostarczanego przez Fastest Cache.
Zadaj je zespołowi LWS i społeczności. Odpowiedź zostanie opublikowana po moderacji.