PHP
#wordpress#php#opcache#php-fpm#ttfb#production#performance

WordPress: OPcache в php.ini для PHP-FPM (снижение TTFB)

Блок настроек OPcache для PHP 8.2 FPM под WordPress: память 256MB, 20k файлов, отключение validate_timestamps. Путь к php.ini, проверка и перезапуск.

Как использовать

  1. Подставьте блок в /etc/php/8.2/fpm/php.ini (или свой путь к FPM php.ini).
  2. Перезапуск: systemctl restart php8.2-fpm. После деплоя кода — systemctl reload php8.2-fpm.
  3. Проверка: php -i | grep opcache.enable

OPcache кэширует скомпилированный PHP в памяти. Без него или с малым лимитом файлов WordPress даёт высокий TTFB и нагрузку на CPU. Ниже — минимальный продакшен-блок для PHP 8.2 FPM.

Блок для php.ini (FPM)

Файл (Debian/Ubuntu): /etc/php/8.2/fpm/php.ini. На CentOS/Rocky путь может быть /etc/php.ini или файл в /etc/php.d/. Убедитесь, что правите конфиг именно FPM, а не CLI.

opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=256
opcache.interned_strings_buffer=32
opcache.max_accelerated_files=20000
opcache.validate_timestamps=0
opcache.revalidate_freq=0
opcache.fast_shutdown=1
  • memory_consumption=256 — минимум для прода с WordPress и плагинами.
  • max_accelerated_files=20000 — WordPress + тема + плагины легко набирают 10k+ файлов.
  • validate_timestamps=0 — не проверять файлы на изменение (максимальная скорость). После выката кода нужен systemctl reload php8.2-fpm.

Перезапуск и проверка

systemctl restart php8.2-fpm
php -i | grep opcache.enable

Ожидаем: opcache.enable => On => On.

Подробнее: WordPress: ускоряем Nginx + PHP-FPM до TTFB меньше 300 мс.