 Autor: [Monika Wojciechowska](/autorzy/monika-wojciechowska) Specjalistka SEO i treści webowych · Zweryfikowano Kwiecień 2026

1.  [HostGrade.pl](/)
2.  [Baza wiedzy](/baza-wiedzy)
3.  Redis jako cache dla WordPress

# Redis jako cache dla WordPress — konfiguracja object cache

Kategoria: [Optymalizacja](/baza-wiedzy) · Aktualizacja: Kwiecień 2026

## Co to jest Redis i po co go używać z WordPress?

Redis to in-memory data store działający jako baza danych klucz-wartość. W kontekście WordPress pełni rolę **object cache** — przechowuje w pamięci RAM wyniki zapytań do bazy danych, opcje WordPressa (wp\_options) oraz inne drogie obliczenia, eliminując powtarzające się zapytania SQL.

Standardowy WordPress bez zewnętrznego object cache używa _cache nietrwałego_ (w pamięci PHP procesu), który jest kasowany po każdym żądaniu. Redis pozwala na cache _trwały między żądaniami_ — jeden użytkownik "rozgrzewa" cache, kolejni korzystają z gotowych danych.

Powiązane tematy: [PHP OPcache](/baza-wiedzy/php-opcache-konfiguracja), [konfiguracja Nginx vhost](/baza-wiedzy/nginx-vhost-konfiguracja), [WordPress security hardening](/baza-wiedzy/wordpress-bezpieczenstwo-hardening) oraz [WordPress Multisite](/baza-wiedzy/wordpress-multisite-konfiguracja). Do porównania hostingów obsługujących Redis sprawdź [kalkulator kosztów](/kalkulator).

## Wymagania — kiedy Redis ma sens?

-   **VPS lub serwer dedykowany** — hosting współdzielony rzadko oferuje Redis
-   **PHP 7.4+** z rozszerzeniem `phpredis` lub `predis`
-   **RAM: minimum 128 MB dla Redis** — dla małych stron wystarczy 64 MB; dla WooCommerce 256 MB+
-   Witryny z **WooCommerce, BuddyPress lub dużą liczbą wtyczek** zyskują najwięcej
-   Statyczne witryny z małym ruchem — zysk minimalny, prościej użyć cache stron (WP Super Cache)

## Instalacja Redis na serwerze (Ubuntu/Debian)

```
sudo apt update
sudo apt install redis-server

# Sprawdź status
sudo systemctl status redis-server

# Test połączenia
redis-cli ping
# Oczekiwany wynik: PONG
```

### Konfiguracja maxmemory (/etc/redis/redis.conf)

```
# Ustaw maksymalny rozmiar pamięci
maxmemory 256mb

# Polityka eksmisji — usuń najrzadziej używane klucze gdy brak pamięci
maxmemory-policy allkeys-lru

# Bind tylko na localhost (bezpieczeństwo — nie wystawiaj Redis publicznie)
bind 127.0.0.1

# Wymagaj hasła (opcjonalnie, ale zalecane)
requirepass twoje_silne_haslo
```

```
sudo systemctl restart redis-server
```

## Instalacja rozszerzenia PHP Redis

```
# Dla PHP 8.x (dostosuj wersję)
sudo apt install php8.2-redis

# Lub przez PECL
sudo pecl install redis

# Sprawdź czy rozszerzenie jest załadowane
php -m | grep redis
```

## Konfiguracja WordPress — wp-config.php

Dodaj przed linią `/* That's all, stop editing! */`:

```
// Redis Object Cache
define( 'WP_REDIS_HOST', '127.0.0.1' );
define( 'WP_REDIS_PORT', 6379 );
define( 'WP_REDIS_PASSWORD', 'twoje_silne_haslo' ); // jeśli ustawiłeś requirepass
define( 'WP_REDIS_DATABASE', 0 );
define( 'WP_REDIS_TIMEOUT', 1 );
define( 'WP_REDIS_READ_TIMEOUT', 1 );

// Prefix — ważne przy wielu instancjach WP na tym samym Redis
define( 'WP_REDIS_PREFIX', 'moja_strona:' );

// Opcjonalnie — wyłącz grupy które NIE powinny być cache'owane
define( 'WP_REDIS_IGNORED_GROUPS', [ 'counts', 'plugins' ] );
```

## Instalacja wtyczki Redis Object Cache

Oficjalna wtyczka **Redis Object Cache** (autor: Till Krüss, 1M+ instalacji aktywnych) dostarcza plik `object-cache.php` do katalogu `wp-content/`.

```
# Przez WP-CLI
wp plugin install redis-cache --activate

# Aktywuj object cache
wp redis enable

# Sprawdź status
wp redis status
```

W panelu WordPress pojawi się widget _Redis Object Cache_ na stronie głównej dashboard z informacją o połączeniu.

## Weryfikacja — czy Redis działa?

```
# Monitoruj live ruch Redis
redis-cli monitor

# Sprawdź statystyki
redis-cli info stats | grep -E 'keyspace_hits|keyspace_misses|instantaneous_ops_per_sec'

# Sprawdź zajętą pamięć
redis-cli info memory | grep used_memory_human
```

Dobre wyniki: **hit rate > 80%** oznacza skuteczny cache. Niska trafność (poniżej 50%) może sugerować zbyt agresywną eksmisję lub nieodpowiednią konfigurację.

### Sprawdź przez WP-CLI

```
wp redis status
# Oczekiwane wyjście:
# Status: Connected
# Client: PhpRedis 6.x
# Hits: 1234 (89.5%)
# Misses: 145 (10.5%)
```

## WooCommerce — specjalne uwagi

WooCommerce generuje wiele transient options i cache sesji klientów. Zalecana konfiguracja:

```
// Nie cache'uj sesji WooCommerce w Redis (już w DB)
define( 'WP_REDIS_IGNORED_GROUPS', [
    'counts',
    'wc_session_id',
    'woocommerce_transients',
] );

// Wydłuż timeout dla sklepów z dużym katalogiem
define( 'WP_REDIS_TIMEOUT', 2 );
define( 'WP_REDIS_READ_TIMEOUT', 2 );
```

Dla WooCommerce z 1000+ produktów przydziel minimum **512 MB pamięci Redis** i monitoruj eviction rate — zbyt częste eksmisje kluczy negują korzyści cache.

## Typowe problemy i rozwiązania

Problem

Przyczyna

Rozwiązanie

Connection refused

Redis nie nasłuchuje / zły port

`redis-cli ping`, sprawdź bind w redis.conf

NOAUTH Authentication required

Brak WP\_REDIS\_PASSWORD

Dodaj stałą do wp-config.php

Hit rate < 30%

Za mało pamięci — agresywna eksmisja

Zwiększ maxmemory lub zmień policy na volatile-lru

Stale content po aktualizacji

Cache nie jest inwalidowany

`wp redis flush` lub `redis-cli FLUSHDB`

PHP Fatal: Class 'Redis' not found

Brak rozszerzenia phpredis

Zainstaluj php-redis lub użyj predis (czysty PHP)

## Redis vs alternatywy

Rozwiązanie

Typ cache

Wymaga VPS?

Zastosowanie

Redis Object Cache

Object cache (baza, opcje)

Tak

WooCommerce, portale

Memcached

Object cache

Tak

Prostsze instalacje

WP Super Cache / W3TC

Cache stron (HTML)

Nie

Blogi, statyczne treści

LiteSpeed Cache

Full-page + object

Nie (wymaga LiteSpeed)

Hosting z LiteSpeed

PHP OPcache

Cache bytecode PHP

Nie

Zawsze włącz — podstawa

Optymalna konfiguracja: **OPcache + Redis + cache stron** (trzy warstwy) — każda eliminuje inny rodzaj opóźnienia.

## Powiązane strony

-   [PHP OPcache — konfiguracja i optymalizacja](/baza-wiedzy/php-opcache-konfiguracja)
-   [Nginx vhost — konfiguracja](/baza-wiedzy/nginx-vhost-konfiguracja)
-   [WordPress security hardening](/baza-wiedzy/wordpress-bezpieczenstwo-hardening)
-   [WooCommerce — optymalizacja hostingu](/baza-wiedzy/woocommerce-optymalizacja-hosting)
-   [Hosting dla WordPress — porównanie](/hosting-wordpress)