Szybka konfiguracja
Po instalacji P2Lab Cache działa z bezpiecznymi defaultami: backend Filesystem, inwalidacja Smart, browser cache wyłączony, server TTL 1 dzień. W większości sklepów wystarczy potwierdzić kilka wyborów przed wejściem na produkcję.
Wszystkie ustawienia są pod Settings → Speed Boost i podzielone na cztery zakładki:
- Dashboard — pokrętła runtime, które zmieniasz najczęściej (TTL-e, cache’owalne trasy)
- Core — tryb inwalidacji, backend storage, kompresja
- Reverse proxy — ustawienia Varnisha
- Help — linki i materiały referencyjne
Każde liczbowe ustawienie można nadpisać per kanał sprzedaży ze standardowego przełącznika kanałów w headerze.
Krok 1 — Wybierz backend storage
Dział zatytułowany „Krok 1 — Wybierz backend storage”Otwórz Core → Cache Storage i wybierz:
- Filesystem (domyślny) — bez dodatkowej infrastruktury. Dobry dla single-server. Cache leży pod
var/cache/na dysku. - Redis — rekomendowany dla multi-server i klastrów. Wypełnij Redis DSN (
redis://host:6379) i opcjonalnie Cache namespace (domyślniep2lab_cache). - APCu — najszybszy dla pojedynczego hosta. Wymaga rozszerzenia PHP
apcu. Nie używaj na multi-server — APCu jest process-local.
Zobacz Backendy storage po szczegóły kompromisów.
Krok 2 — Wybierz tryb inwalidacji
Dział zatytułowany „Krok 2 — Wybierz tryb inwalidacji”Otwórz Core → Settings → Cache Invalidation Mode:
- Manual — nigdy nie inwaliduje automatycznie. Używaj tylko, jeśli sam wywołujesz purge przez CLI lub REST API.
- Basic — cache’uje strony produktów, inwaliduje na zmianach produktu.
- Extended — rozszerza Basic o kaskadową inwalidację dla kategorii i listingów.
- Precise — cache’uje wszystko, inwaliduje produkty + listingi, bez kaskady kategorii.
- Smart (rekomendowany, domyślny) — sprawdza, które pola faktycznie się zmieniły, i czyści tylko dotknięte wpisy.
Zobacz Tryby inwalidacji po pełny breakdown.
Krok 3 — Potwierdź cache’owalne trasy
Dział zatytułowany „Krok 3 — Potwierdź cache’owalne trasy”Otwórz Dashboard → Cacheable Routes. Każda trasa ma osobny przełącznik:
- Cache Home Page (on)
- Cache Navigation Pages (on) — kategorie / listingi
- Cache Navigation Pages (AJAX) (on) — paginacja listingów + filtry
- Cache Navigation Filters (AJAX) (on) — agregacje filtrów
- Cache Product Pages (on)
- Cache CMS Pages (on)
- Cache Async Buybox (AJAX) (off domyślnie) — włącz tylko, jeśli Twój storefront używa async buybox, a odpowiedź nie zależy od klienta
Krok 4 — Zdecyduj o cache browsera / CDN
Dział zatytułowany „Krok 4 — Zdecyduj o cache browsera / CDN”Otwórz Dashboard → Configuration:
- Cache TTL (domyślnie: 1 dzień) — jak długo wpisy żyją w backendzie.
- max-age (domyślnie: 0 — bez browser cache) — wysyłane jako
Cache-Control: max-age=…do przeglądarek. Zostaw0, jeśli chcesz, aby każdy odwiedzający revalidował (cache i tak serwuje odpowiedź szybko). - s-maxage (domyślnie: 6 godzin) — wysyłane jako
Cache-Control: s-maxage=…do shared cache między Tobą a przeglądarką. - CDN-Cache-Control (domyślnie: wyłączone) — osobny nagłówek rozpoznawany przez Cloudflare, Fastly, Akamai. Używaj, gdy chcesz, by CDN cache’ował przez inny czas niż inne shared cache.
Zobacz Nagłówki Cache-Control po semantykę nagłówków odpowiedzi.
Krok 5 — Kompresja (opcjonalnie)
Dział zatytułowany „Krok 5 — Kompresja (opcjonalnie)”Otwórz Core → Cache Storage → Enable Cache Compression (domyślnie: on, level 6).
Kompresja działa na danych zapisywanych w backendzie — nie wpływa na transfer HTTP. Typowe oszczędności to 40–60% dysku lub pamięci, w zamian za mały koszt CPU przy zapisie i odczycie cache. Poziomy:
1— najszybsze, najmniejszy ratio3— szybkie6— zbalansowane (rekomendowane)9— najmniejsze, najwolniejsze
Krok 6 — Reverse proxy (tylko jeśli używasz Varnisha)
Dział zatytułowany „Krok 6 — Reverse proxy (tylko jeśli używasz Varnisha)”Otwórz Reverse proxy → Settings:
- Enable Varnish Cache (on domyślnie — działa tylko, jeśli sam Shopware jest skonfigurowany na reverse proxy).
- Xkey Invalidation Strategy — Default / Precise / Smart. Wybierz Smart dla typowego sklepu.
- (Opcjonalnie) Split xkey Headers — jeśli Varnish odrzuca długie xkey, podziel na kilka HTTP headerów.
- (Opcjonalnie) Shorten xkey Tags — MD5-hashuj długie nazwy tagów, by zmieścić się w limitach.
- (Opcjonalnie) Xkey Tag Blocklist — wyklucz kategorie tagów (theme, translations, snippets itp.), które nie powinny triggerować purgów.
Zobacz Reverse proxy (Varnish) po pełen obraz.
Zapisz i przeładuj
Dział zatytułowany „Zapisz i przeładuj”Kliknij Save w prawym górnym rogu. Nowe ustawienia działają natychmiast dla nowych żądań. Istniejące wpisy cache pozostają ważne, aż wygaśnie ich TTL lub odpali się inwalidacja.
Dalej: zweryfikuj, że działa
Dział zatytułowany „Dalej: zweryfikuj, że działa”Przejdź do Pierwsze trafienie cache, aby potwierdzić, że cache faktycznie serwuje strony.