Не выставляется Last-modified для js-файлов
bodomic
nginx-forum at nginx.us
Tue Dec 24 15:56:01 UTC 2013
Всем привет,
Nginx-1.2.9 и 1.4.4 не выставляет Last-Modified заголовок, причём только для
js-файлов. Из-за этого клиент всегда получает статус 200 и всегда качает
скрипты заново.
Стили и картинки, выданные из того же локейшна того же сервера, получают
заголовок Last-Modified согласно stat, ну и обрабатываются кешем как надо.
Более того, я прочитал про отдельный статус этого заголовка и попробовал его
задать через add_header. Он всё равно не появился.
Конфиг (первый локейшн добавлен специально для экспериментов):
location /js/j.js {
root /opt/project/www/static;
add_header 'Last-Modified' $time_iso8601;
expires 15m;
}
location / {
root /opt/project/www/static;
expires 15m;
}
Выше в конфиге ничего не делается с заголовками или кешами, но скажите, что
показать, я покажу.
Запрос к css (кешируется):
# curl -I -H "Host: st.myproject.net"
http://localhost:2083/s/branding/branding_ru.css
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 24 Dec 2013 15:52:41 GMT
Content-Type: text/css
Content-Length: 4156
Last-Modified: Tue, 24 Dec 2013 15:37:02 GMT
Connection: keep-alive
Expires: Tue, 24 Dec 2013 16:07:41 GMT
Cache-Control: max-age=900
X-Frontend: 1
Accept-Ranges: bytes
Запрос к js (не кешируется):
# curl -I -H "Host: st.myproject.net" http://localhost:2083/js/j.js
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 24 Dec 2013 15:52:12 GMT
Content-Type: application/x-javascript
Connection: keep-alive
Expires: Tue, 24 Dec 2013 16:07:12 GMT
Cache-Control: max-age=900
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,245807,245807#msg-245807
Подробная информация о списке рассылки nginx-ru