Kilka stron korzysta z jednego serwera Redis: jak uniknąć mieszania danych pamięci podręcznej?

Jeśli kilka niezależnych instalacji WordPressa korzysta ze wspólnej instancji Redis i wtyczki Redis Object Cache, ustaw dla każdej inny prefiks kluczy. Pozwala to rozróżnić ich wpisy pamięci podręcznej i uniknąć kolizji nazw kluczy.

Redis na hostingu Progreso

Każdy wykupiony serwer hostingowy progreso.pl pozwala uruchomić pojedynczą instancję Redis. W panelu wybierz: Aplikacje -> Serwery -> Dodaj redis.

Instancja działa na domyślnych portach i jest zabezpieczona przed dostępem innych użytkowników hostingu. To zabezpieczenie nie zastępuje rozróżniania danych stron tego samego użytkownika, które korzystają ze wspólnej instancji.

Do czego służy prefiks

Prefiks to oznaczenie dodawane do nazw kluczy, pod którymi przechowywane są dane pamięci podręcznej. Odrębny prefiks dla każdej niezależnej instalacji pozwala uniknąć sytuacji, w której strony używają tych samych nazw kluczy.

Prefiks nie jest zabezpieczeniem dostępu do danych i nie zastępuje ochrony samej instancji Redis.

Ustawienie prefiksu w Redis Object Cache

Instrukcja dotyczy wtyczki Redis Object Cache autorstwa Till Krüss, która obsługuje ustawienie WP_REDIS_PREFIX. Nie jest to standardowa stała WordPressa. Jeśli używasz innej wtyczki, sprawdź sposób ustawienia prefiksu w jej dokumentacji.

Poniższe przykłady dotyczą dwóch niezależnych instalacji. Wartości strona-a: i strona-b: są fikcyjnymi oznaczeniami ilustrującymi konfigurację, a nie danymi istniejących stron. Każda definicja trafia do pliku odpowiedniej instalacji — nie dodawaj obu do jednego pliku.

  1. Sprawdź, czy każda konfigurowana instalacja korzysta z wtyczki Redis Object Cache.
  2. Zrób kopię pliku wp-config.php z katalogu głównego danej instalacji. Przechowuj ją poza publicznie dostępnym katalogiem WWW, ponieważ plik zawiera dane dostępowe.
  3. W wp-config.php pierwszej instalacji dodaj definicję WP_REDIS_PREFIX z odrębną wartością, na przykład strona-a:. Umieść ją przed komentarzem kończącym edycję konfiguracji i przed linią ładującą wp-settings.php. Jeśli WP_REDIS_PREFIX jest już zdefiniowane, zmień istniejący wpis zamiast dodawać kolejny.
  4. W wp-config.php drugiej instalacji ustaw inną wartość, na przykład strona-b:, w tym samym miejscu konfiguracji. Dla każdej kolejnej niezależnej instalacji wybierz odrębny prefiks.
  5. Pozostaw $table_prefix bez zmian — to prefiks tabel bazy SQL WordPressa, a nie kluczy Redis. Przy ustawianiu prefiksu nie zmieniaj hosta, portu ani danych połączenia Redis.
  6. Nie używaj FLUSHALL, FLUSHDB ani globalnego czyszczenia współdzielonej instancji Redis.
// Fikcyjny przykład: wp-config.php pierwszej instalacji.
define('WP_REDIS_PREFIX', 'strona-a:');
// Fikcyjny przykład: wp-config.php drugiej instalacji.
define('WP_REDIS_PREFIX', 'strona-b:');

Sprawdzenie stron po zmianie

Po ustawieniu prefiksów sprawdź każdą stronę korzystającą ze wspólnej instancji Redis. Odrębne prefiksy zapobiegają kolizjom nazw kluczy, ale nie są rozwiązaniem każdego problemu z pamięcią podręczną.

  1. Przed zmianą zapisz, na których stronach występują objawy i jakie czynności pozwalają je odtworzyć.
  2. Po zmianie powtórz te same czynności na stronach, na których występował problem.
  3. Sprawdź także typowe działanie pozostałych stron korzystających z tej instancji. Zapisz wyniki osobno dla każdej strony.
  4. Jeśli problem nadal występuje lub wynik jest niejednoznaczny, otwórz nowe zgłoszenie do Progreso przez formularz w panelu Extranet. Podaj domeny stron korzystających ze wspólnej instancji Redis, nazwę i wersję wtyczki, opis objawów i sposób ich odtworzenia, czas wystąpienia, informację o zmianach prefiksów oraz wyniki prób osobno dla każdej strony. Nie przesyłaj haseł, pełnego pliku wp-config.php ani innych sekretów.
Czy ta odpowiedź była przydatna?
Najczęściej czytane

Nie jesteś przekonany?

Preferencje plików cookie
Szanowni Państwo, nasz serwis stosuje pliki Cookies, aby zapewnić jego prawidłowe działanie. Możecie określić warunki przechowywania lub dostępu do plików Cookies klikając przycisk Ustawienia. Zalecamy zapoznanie się z Polityką cookies oraz Polityką Prywatności.
Preferencje plików cookie
Wykorzystanie plików cookie

Szanowni Państwo, nasz serwis stosuje pliki Cookies aby zapewnić jego prawidłowe działanie. Możecie określić warunki przechowywania lub dostępu do plików Cookies. Zalecamy zapoznanie się z Polityką cookies oraz Polityką Prywatności.

Więcej informacji

W przypadku jakichkolwiek pytań dotyczących naszej polityki dotyczącej plików cookie prosimy o kontakt.