Nginx – Как использовать Cache-control?

Заголовок Cache-control позволяет сообщить браузеру, что те или иные файлы браузер может закешировать и при повторном обращении использовал кеш вместо запроса к сайту. Это позволяет значительно увеличить скорость загрузки сайта для людей.

server {
...
        location ~* ^.+\.(jpg|mmdb|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|swf|flv|mp3|woff|eot|svg|ttf|xsl)$ {
           expires 30d;
           add_header Cache-Control "public";
        }
...
}

Заголовок Cache-control в Nginx’e ставится с помощью переменной expires.

Какие значения могут быть у переменной expires?

off Это значение отключает заголовки кеша Nginx. Заголовок Cache-control не будет добавлен, и, что более важно, существующие заголовки, полученные от апстрима, не будут изменены.
epoch Принудительное просрачивания кеша установкой заголовок Expires в значение “1 January, 1970 00:00:01 GMT”.
max Это противоположно значению «epoch». Заголовок Expires будет равен «31 December 2037 23:59:59 GMT», а максимальный возраст Cache-Control будет равен 10 годам. Это в основном означает, что ответы HTTP гарантированно никогда не изменятся.
Specific time Фактическое значение определенного времени означает крайний срок истечения с момента запроса. Например, 10w, 30d, 7h;

Отрицательное значение для этой директивы добавляет заголовок Cache-Control: no-cache.

“modified” specific time Если вы добавите ключевое слово «modified» перед значением времени, то в момент истечения срока будет вычисляться относительно времени модификации файла.
“@” specific time Время с префиксом @ указывает абсолютное время-дня истечения срока действия. Значение должно быть меньше 24 часов. Например, Expires @17h

Статические файлы, должны иметь директиву expires. Однако общий совет по поводу апстрима – всегда проверять заголовки кэширования, которые вы получаете от апстрима, и воздерживаться от чрезмерной оптимизации, устанавливая более агрессивную политику кэширования.

Понравилась статья? Поделиться с друзьями:
IPCalc Blog
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: