Оптимальный конфиг nginx для статического сайта сокращает TTFB до ≤50ms и размер передаваемых данных на 70% через gzip/brotli сжатие. Ниже — готовый конфиг с кешированием, сжатием и security headers.
Быстрый старт
Скопируйте конфиг ниже в /etc/nginx/sites-available/site.conf, замените your-domain.com и /var/www/site на свои значения.
server {
listen 443 ssl http2;
server_name your-domain.com;
root /var/www/site/current;
index index.html;
gzip on;
gzip_types text/css application/javascript image/svg+xml;
location / {
try_files $uri $uri/ =404;
expires 30d;
add_header Cache-Control "public, immutable";
}
}
Security Headers
Добавьте CSP, HSTS, X-Frame-Options для защиты. Для GitHub CMS с Tinkoff добавьте tbank.ru и tinkoff.ru в script-src.
FAQ
Как проверить конфиг nginx?
Ответ: nginx -t проверяет синтаксис. curl -I https://your-domain.com показывает заголовки ответа. Google PageSpeed Insights измеряет TTFB.