Oceń ten artykuł :
Ten artykuł był dla Ciebie przydatny ?
Tak
Nie
Vous avez noté 0 étoile(s)
Sommaire
Procédure
W tej dokumentacji wyjaśnimy krok po kroku, jak zmusić Varnish i przeglądarki do przechowywania zasobów w pamięci podręcznej, nawet jeśli wysyłają żądania Pragma: no-cache lub Cache-Control: no-cache.
Hosting współdzielony LWS i zarządzane pakiety cPanel/VPS są oparte na architekturze :
Przeglądarka ⇄ NGINX (SSL + HTTP/2) ⇄ Varnish Cache ⇄ Apache/PHP-FPM
Gdy wszystko jest poprawnie skonfigurowane, Varnish może zapewnić do 1000 razy szybszy dostęp niż bezpośredni dostęp do PHP, jednocześnie odciążając procesor serwera.
| Element | Wpływ na cache | Jak na to wpłynąć |
| Metoda | Kwalifikują się tylko GET i HEAD | Unikaj POST dla stron publicznych |
| Nagłówki odpowiedzi Cache-Control, Expires, Pragma | Określają czas trwania i zakres | Ustawiane przez .htaccess (patrz §3) |
| Pliki cookie / Set-Cookie | Jeden plik cookie = domyślnie brak buforowania | Usuń lub wyłącz niepotrzebne pliki cookie |
| Status HTTP | 200, 203, 301, 302, 404, 410 mogą być buforowane | Brak działania, ale unikaj 500! |
Aktywuj moduł mod_headers (jest to domyślne w LWS), a następnie umieść poniższy fragment w dowolnym miejscu:
Header set Cache-Control "public, max-age=3600, s-maxage=3600, stale-while-revalidate=60, stale-if-error=86400" Header set Expires "Thu, 31 Dec 2037 23:55:55 GMT"
Umieszczenie tego samego pliku .htaccess w folderze "/images/" stosuje regułę tylko do folderu "images".
Nagłówek ustawia Cache-Control "public, max-age=2592000, s-maxage=2592000, immutable".
immutable: mówi przeglądarce, że nie jest wymagana ponowna walidacja, dopóki obiekt nie wygaśnie; idealny dla plików wersjonowanych (style.483bf.css).
3.3 Krótka pamięć podręczna dla HTML
Ustawienie nagłówka Cache-Control "public, max-age=300, s-maxage=600, must-revalidate".
Wygasa po 5 minutach po stronie klienta i 10 minutach po stronie Varnish, następnie must-revalidate.
| Rzeczywisty przypadek | Fragment .htaccess | Dlaczego miałoby się tak dziać? |
| Strona docelowa aktualizowana co godzinę | max-age=600, s-maxage=1200 | Odwiedzający otrzymują dane "prawie na żywo" bez przeciążania PHP |
| Wersjonowane CSS/JS | max-age=31536000, niezmienny | Praktycznie brak ruchu na serwerze, natychmiastowe ładowanie |
| Obrazy produktów e-commerce | max-age=604800 | Zmniejsza TTFB, przyspiesza działanie katalogu |
| Back-office / wp-admin | no-store, private | Unika umieszczania wrażliwych danych we współdzielonej pamięci podręcznej |
PURGE(jeśli włączone):curl -X PURGE -H "Host: example.com" https://exemple.com/chemin/ressource.jpgban req.http.host == "example.com" && req.url ~ "/images/"
curl -I https://exemple.com/style.css
Zobacz :
W Chrome/Edge: DevTools > Network > Disable cache może symulować pierwszego odwiedzającego.
Pamięć podręczna Varnish jest teraz pod kontrolą!
Oceń ten artykuł :
Ten artykuł był dla Ciebie przydatny ?
Tak
Nie
1mn czytanie
Jak mogę uzyskać dostęp do statystyk odwiedzin witryny?
1mn czytanie
Jak aktywować Mod_PageSpeed na mojej stronie?
1mn czytanie
Jak korzystać z modułów pamięci podręcznej w LWSPanel?
3mn czytanie
Przyspiesz swoją witrynę dzięki LWS Cache