Cookie free headers с помошью nginx

Для ускорения загрузки сайта, GTMetrix рекомендовал использовать сервер статики. Обычно, он используется для картинок, JS/CSS скриптов, архивов и другие «тяжелые» файлы.

Для nginx подобный эффект можно получить используя простую директиву: fastcgi_hide_header Set-Cookie.

Пример конфига:

server {
    listen 80;
    server_name static.site.com.ua;
    root /var/www/site.com.ua;
    fastcgi_hide_header Set-Cookie;
    # Compression.
    gzip on;
    gzip_min_length 10240;
    gzip_proxied expired no-cache no-store private auth;
    gzip_types    text/plain application/javascript application/x-javascript text/javascript text/xml text/css;
    gzip_disable "msie6";
    # Media: images, icons, video, audio, HTC
    location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|mp4|ogg|ogv|webm|htc)$ {
        access_log off;
        add_header Cache-Control "max-age=2592000";
    }
    # CSS and Javascript
    location ~* \.(?:css|js)$ {
        add_header Cache-Control "max-age=31536000";
        access_log off;
    }
}

Статические файлы не нужно хранить отдельно! root ссылается на туже папку, что и основной домен. Это не сломает работу вашей CMS.

В конфиге есть Gzip сжатие и заголовки для кеширования. Для улучшения производительности целесообразно также использовать HTTP/2.