ngx_http_headers_module モジュール
設定例 ディレクティブ add_header add_trailer expires |
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
|
---|---|
デフォルト: | - |
コンテキスト: |
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
|
---|---|
デフォルト: | - |
コンテキスト: |
http , server , location , if in location |
このディレクティブはバージョン 1.13.2で導入されました。
応答コードが 200, 201, 204, 206, 301, 302, 303, 307 または 308で提供される応答ヘッダの最後に指定したフィールドを追加することができます。パラメータの値には変数を含めることができます。
いくつかのadd_trailer
ディレクティブが有り得ます。現在のレベルにadd_trailer
ディレクティブが無い場合に限り、これらのディレクティブは上の設定レベルから引き継がれます。
always
パラメータが指定された場合、指定されたフィールドは応答コードに関係なく追加されるでしょう。
構文: |
expires [ expires
|
---|---|
デフォルト: |
expires off; |
コンテキスト: |
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)で提供される"Expires"と"Cache-Control"応答ヘッダフィールドの追加または修正を有効または無効にします。パラメータは正または負の timeに成り得ます。
"Expires"フィールドの時間は、現在の時間とディレクティブで指定された time
の合計が計算されます。modified
パラメータが使われると (0.7.0, 0.6.32)、ファイルの修正時間とディレクティブで指定されたtime
の合計で時間が計算されます。
更に、"@
"プリフィックスを使って日の中での時間を指定することができます。(0.7.9, 0.6.34):
expires @15h30m;
"Cache-Control"フィールドの内容は指定した時間の符号に依存します:
- 時間が負 - "Cache-Control: no-cache"
-
時間が正または0 - "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;