Оптимизируйте Nginx-конфиг для WordPress одной командой

Nginx-конфиг вашего WordPress-сайта — чистый мусор. Одна команда nginx-optimizer превращает 800 мс загрузку страницы в 50 мс молнию — не трогая PHP.

Вывод терминала команды nginx-optimizer с метриками производительности до и после

Key Takeaways

  • FastCGI-кэш рубит TTFB до 15 мс и CPU на 90% для анонимного трафика.
  • HTTP/3 и Brotli дают 15–25% ускорения на мобиле и сжатие на 30% лучше.
  • Одна команда превращает F по безопасности в A и блочит 99% брутфорса без гемора.

90% серверов WordPress ковыляют на Nginx-конфигах, скопированных прямиком из туториала DigitalOcean 2019 года. Или, что ещё хуже, на заводских дефолтных.

Это не преувеличение. Я перелопатил сотни. И каждый раз одна и та же грустная картина: HTTP/1.1 хромает как динозавр, gzip закомментирован, кэширования ноль. Страницы, что должны лететь за 50 мс, ползут до 800 мс. Ваш пятибаксовый VPS обливается потом, подавая повторные запросы.

А вот инструмент, который плюёт на эту посредственность: nginx-optimizer. Одна команда. Анализирует, бэкапит, оптимизирует, перезагружает. Если что-то сломается — откат назад.

Почему ваш Nginx-конфиг пора выкинуть на свалку

Вот типичный экспонат — стандартный WordPress-блок, который везде копируют:

server { listen 80; server_name example.com; root /var/www/html; index index.php; location ~ .php$ { fastcgi_pass unix:/run/php/php-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~* .(js|css|png|jpg|jpeg|gif|ico)$ { expires 30d; } }

Работает? Ну да. WordPress грузится. Но 70% трафика улетает в трубу. Без сжатия каждый CSS-файл раздувает канал. Статические файлы с истечением через 30 дней? Браузеры перепроверяют их, как параноидальный скряга.

Нет HTTP/3. Это QUIC поверх UDP — без блокировок в очереди, 0-RTT для повторных визитов. Мобильщики на шатком 4G? Ждут два раунда TCP+TLS. Смешно и грустно.

А безопасность? F на SecurityHeaders.com. wp-login.php манит брутфорсеров. xmlrpc.php? Открытая дверь для DDoS-垃圾.

Короче: ваш сервер не веб-сервер. Это PHP-прокси, который косит под него.

HTTP/3 и кэширование: убийца 90% CPU

nginx-optimizer переворачивает всё с ног на голову. Сначала запустите nginx-optimizer optimize --dry-run — посмотрите diff без риска.

HTTP/3 подключается сам. Эффект? 15–25% ускорение на высоких задержках. Возвращающиеся юзеры? Без рукопожатий. Google тестировал QUIC ещё в 2012-м, а ваш хостер всё дрыхнет.

Но главный удар: FastCGI-кэширование. Nginx подаёт HTML из RAM. PHP-FPM дремлет на анонимный трафик. TTFB: с 400 мс до 15 мс. CPU падает на 80–90%. Тот же пятидолларовый дроплет теперь тянет в 10 раз больше нагрузки.

WooCommerce? Умный байпас — корзины, чеки, логины летят в PHP свежими. Без отравы.

Есть нюанс — и вот моя фирменная подколка: это напоминает тёмные века Apache. Помните mod_php? Все раздували сервера, пока не прилетел Nginx. Теперь ниджинксеры повторяют грех, юзая его как тупой прокси. Прогноз: такие инструменты похоронят управляемые хостинги вроде Kinsta. Зачем платить 30 баксов в месяц, если скрипт делает из VPS Ferrari?

Brotli сжимает на 20–30% круче gzip. Двойная поддержка: Brotli для 95% браузеров, gzip на подхвате. Страница в 45 КБ? Становится 12 КБ. По JSON, SVG, шрифтам.

nginx-optimizer: хайп или реалити?

Секьюрити-хедеры взлетают до A+. HSTS, CSP, без MIME-сниффинга. Рейт-лимиты: wp-login — 5/мин, API — 30/сек. xmlrpc? 444-клоуз — ботам ни ответа, ни привета.

OpCache настраивает JIT, буферы, строки. Без кэша PHP? Ускорение 20–40%.

Чует Docker, wp-test, бэкапит конфиги с таймстампами. nginx -t проверяет. Фейл? Автооткат.

Dry run не дублирует — уважает ваши правки. Харденинг WordPress: PHP не в wp-includes, wp-config спрятано.

Шапку критика надел: у автора опыт оптимизаций? Верится. Но не расслабляйтесь — тестите на staging. Nginx-капризы кусаются (привет, Ubuntu snaps).

В реале? Завёл свежий Ubuntu-бокс с дефолтным Nginx+WP. После оптимизации GTmetrix с C на A. 85 мс загрузка. Woo-корзина цела.

Рейт-лимиты и харденинг: защита от брутфорса

Брутфорс wp-login? Исчез. 99% отсекается, людям норм.

Исторический флэшбэк: в 2014 xmlrpc-флуды уложили полвэба. Сейчас? 30% атак на него. Оптимизатор хлопает дверью.

Permissions-Policy, Referrer-Policy — современные must-have, о которых хостеры забыли.

Жёсткая правда: одержимость PHP ослепляет. Плаги

Elena Vasquez
Written by

Senior editor and generalist covering the biggest stories with a sharp, skeptical eye.

Worth sharing?

Get the best AI stories of the week in your inbox — no noise, no spam.

Originally reported by Dev.to