nginx: Last-Modified

sidorka
На сайте с 17.08.2012
Offline
211
1817

Как без участия бэкэнда средствами nginx отдавать заголовок Last-Modified со значением времени создания кэша?

Дешевые домены для дорвеев и не только - от 55р (https://goo.gl/Wtnwqp)
MU
На сайте с 01.10.2013
Offline
43
#1

Nginx, насколько мне известно, никак не отдаёт время создания кэша, но может устанавливать заголовок Expires: http://nginx.org/en/docs/http/ngx_http_headers_module.html#expires

Если указать expires 0; то-есть время жизни кэша == 0, то в заголовке Expires будет время создания кэша.

Если необходимо, чтобы это время было непременно в заголовке Last-Modified, можно очень гибко перезаписывать любые заголовки с помощью Lua-модуля: https://www.nginx.com/resources/wiki/modules/headers_more/

Хостинг на SSD от 49 руб./мес. (http://mne.ru/services/virt_hosting.shtml) + бесплатный SSL VPS/VDS на SSD в России от 75 руб./мес. (http://mne.ru/services/vps.shtml) Скидка 10% на хостинг и VPS по промокоду — SEARCHENGINES
sidorka
На сайте с 17.08.2012
Offline
211
#2

А заголовок переписать выйдет? Добавить еще один хост или варниш какой перед кэширующим нгинксом с Expired=0 и заменить на лету Expired на Last-Modified?

---------- Добавлено 20.07.2016 в 17:30 ----------

Еще интересует вопрос If-Modified-Since. Нгинкс умеет обрабатывать его?

MU
На сайте с 01.10.2013
Offline
43
#3
А заголовок переписать выйдет?

Да, конечно. Lua-модулем можно получить значение любого заголовка и добавить/переписать заголовок. Выше написал об этом.

Добавить еще один хост или варниш какой перед кэширующим нгинксом с Expired=0 и заменить на лету Expired на Last-Modified?

Если перед nginx будет varnish, возможно, имеет смысл не кэшировать на стороне nginx, а только отдавать статику.

Еще интересует вопрос If-Modified-Since. Нгинкс умеет обрабатывать его?

Умеет. http://nginx.org/en/docs/http/ngx_http_core_module.html

Но наиболее правильно всё же не использовать заголовки не по назначению и время жизни кэша отдавать с помощью Expires, а не использовать для этого Last-Modified.

L
На сайте с 13.01.2011
Offline
125
#4

нужно добавить в конфиг в случае с nginx и apache

sub_filter_last_modified on;
Контакты-icq 535609 ()

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий