Redis на VPS с HestiaCP удобен как object cache для WordPress: горячие данные живут в RAM, PHP и MySQL меньше дёргаются на одних и тех же запросах. Ниже – практичная установка redis-server, настройка памяти, PHP-расширения и плагина Redis Object Cache.
Что такое Redis и зачем он WordPress
Redis – in-memory хранилище структур данных. Его используют как быстрый кэш или как БД для отдельных задач. В WordPress object cache (WP_Object_Cache) может складывать результат тяжёлых запросов и опций не на диск, а в Redis: повторное чтение идёт из памяти.
php-redis (расширение PHP) даёт API, через который PHP-код и плагины общаются с Redis. Без расширения плагины object cache обычно не подключатся.
План: SSH → redis-server → redis.conf → php-redis → проверка → Redis Object Cache в WordPress.
Шаг 1. SSH на сервер
Подключитесь к VPS по SSH под пользователем с sudo (как правило root или админ Hestia). Все команды ниже выполняются на сервере, не в контейнере сайта.
Шаг 2. Установка redis-server
На Debian/Ubuntu:
sudo apt update sudo apt install redis-server
Проверьте, что Redis слушает порт 6379 на localhost:
netstat -nltp | grep redis # или: ss -lntp | grep 6379
Ожидаемый вид: 127.0.0.1:6379 в состоянии LISTEN. Наружу порт лучше не открывать без необходимости и без пароля/ACL.
Шаг 3. Настройка redis.conf
Откройте конфиг (путь на большинстве VPS):
sudo nano /etc/redis/redis.conf
Задайте лимит памяти и политику вытеснения. Для object cache обычно хватает allkeys-lru: при заполнении Redis удаляет редко используемые ключи.
maxmemory 256mb maxmemory-policy allkeys-lru
- maxmemory 256mb – потолок RAM для Redis; на VPS с запасом памяти можно поднять (512mb, 1gb), но не отдавайте под кэш всю оперативку;
- maxmemory-policy allkeys-lru – вытеснение по LRU среди всех ключей.
Сохраните файл и перезапустите сервис:
sudo systemctl restart redis-server sudo systemctl status redis-server
Шаг 4. PHP-расширение redis
Поставьте пакет расширения (на Hestia часто тянет php*-redis под активные версии PHP):
sudo apt install php-redis
Если модуль не подхватился для нужной версии PHP, включите его явно (пример для PHP-FPM 8.2) и перезапустите FPM/Hestia-пул:
# пример: проверить модуль php -m | grep -i redis # при необходимости: phpenmod redis && systemctl restart php8.2-fpm
Шаг 5. Проверка Redis
Локальный клиент:
redis-cli ping # ответ: PONG exit
Шаг 6. WordPress: Redis Object Cache
На стороне сайта (для WordPress) удобен плагин Redis Object Cache. Перед включением добавьте в wp-config.php префикс ключей и флаг кеша (префикс берите уникальный для сайта, чтобы не смешивать ключи на общем Redis):
define( 'WP_REDIS_PREFIX', 'example.site:' ); define( 'WP_CACHE', true );
Дальше: установите и активируйте плагин → раздел Настройки → Redis (или Плагины → Redis, зависит от версии) → Enable Object Cache. Статус должен стать Connected. Если нет – проверьте, что redis-server запущен, php-redis виден той же версией PHP, что обслуживает сайт, и в wp-config.php нет опечаток.
Короткий чеклист
redis-serverустановлен и слушает 127.0.0.1:6379- В
redis.confзаданы maxmemory и maxmemory-policy, сервис перезапущен php -m | grep redisпоказывает модуль для PHP сайтаredis-cli ping→ PONG- В wp-config есть WP_REDIS_PREFIX / WP_CACHE, плагин в статусе Connected
