Модуль ngx_http_headers_module
Модуль ngx_http_headers_module позволяет добавить поля заголовка «Expires» и «Cache-Control», а также произвольные поля в заголовок ответа.
Пример конфигурации
expires 24h; expires modified +24h; expires @24h; expires 0; expires -1; expires epoch; expires $expires; add_header Cache-Control private;
Директивы
| Синтаксис: | add_header
name value
[always]; |
|---|---|
| Значение по умолчанию: | — |
| Контекст: | http, server, location, if in location |
Добавляет указанное поле в заголовок ответа при условии, что код ответа равен 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13) или 308 (1.13.0). Значение параметра может содержать переменные.
Может быть несколько директивы add_header. Эти директивы наследуются с предыдущего уровня конфигурации только в том случае, если на текущем уровне нет директивы add_header.
Если указан параметр always (1.7.5), поле заголовка будет добавлено независимо от кода ответа.
| Синтаксис: | add_trailer
name value
[always]; |
|---|---|
| Значение по умолчанию: | — |
| Контекст: | http, server, location, if in location |
Эта директива появилась в версии 1.13.2.
Добавляет указанное поле в конец ответа при условии, что код ответа равен 200, 201, 206, 301, 302, 303, 307 или 308. Значение параметра может содержать переменные.
Может быть несколько директивы add_trailer. Эти директивы наследуются с предыдущего уровня конфигурации только в том случае, если на текущем уровне нет директивы add_trailer.
Если указан параметр always, указанное поле будет добавлено независимо от кода ответа.
| Синтаксис: | expires [modified] time;expires
epoch |
max |
off; |
|---|---|
| Значение по умолчанию: | expires off; |
| Контекст: | http, server, location, if in location |
Включает или выключает добавление или изменение полей заголовка ответа «Expires» и «Cache-Control» при условии, что код ответа равен 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13) или 308 (1.13.0). Параметр может быть положительным или отрицательным временем.
Время в поле «Expires» вычисляется как сумма текущего времени и time, указанного в директиве. Если используется параметр modified (0.7.0, 0.6.32), то время вычисляется как сумма времени последнего изменения файла и time , указанного в директиве.
Кроме того, можно указать время суток, используя префикс «@» (0.7.9, 0.6.34):
expires @15h30m;
Содержимое поля «Cache-Control» зависит от знака указанного времени:
- время отрицательное — «Cache-Control: no-cache».
- время положительное или ноль — «Cache-Control: max-age=
t», гдеt— время, указанное в директиве, в секундах.
Параметр epoch устанавливает «Expires» в значение «Thu, 01 Jan 1970 00:00:01 GMT», а «Cache-Control» в «no-cache».
Параметр max устанавливает «Expires» в значение «Thu, 31 Dec 2037 23:55:55 GMT», а «Cache-Control» в 10 лет.
Параметр off отключает добавление или изменение полей заголовка ответа «Expires» и «Cache-Control».
Последнее значение параметра может содержать переменные (1.7.9):
map $sent_http_content_type $expires {
default off;
application/pdf 42d;
~image/ max;
}
expires $expires;
© 2002-2021 Igor Sysoev
© 2011-2024 Nginx, Inc.
Licensed under the BSD License.
https://nginx.org/en/docs/http/ngx_http_headers_module.html