佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Nginx 操作響應(yīng)頭信息的實(shí)現(xiàn)

Nginx 操作響應(yīng)頭信息的實(shí)現(xiàn)

熱門(mén)標(biāo)簽:百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 智能手機(jī) 網(wǎng)站建設(shè) 檢查注冊(cè)表項(xiàng) 美圖手機(jī) 硅谷的囚徒呼叫中心 阿里云 使用U盤(pán)裝系統(tǒng)

前置條件:需要編譯 ngx_http_headers_module 模塊,才支持 header 頭信息操作

add_header

意思為將自定義的頭信息的添加到響應(yīng)頭,指令為 add_header name value [always];,可以用在 http {}, server {}, location {}, if in location {} 上下文中,
只有當(dāng)響應(yīng)狀態(tài)碼等于 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), 或 308 (1.13.0) 時(shí)生效,如果 always 參數(shù)指定了,頭信息將無(wú)視狀態(tài)碼,在所有響應(yīng)中強(qiáng)制返回。

注意: 可以聲明多個(gè) add_header 指令,當(dāng)且僅當(dāng) 當(dāng)前區(qū)塊沒(méi)有 add_header 的時(shí)候,才會(huì)繼承上級(jí)聲明的 add_header 信息

例如:

server {
 add_header a 123;

 location / {
  root /path;
 }

 location /download/ {
  add_header b 321;
 }
}

如上的例子,在訪問(wèn) /download/ 路由的時(shí)候,將返回 b 321 這樣的頭信息,而訪問(wèn) / 路由時(shí),將返回上級(jí)指定的 a 123 頭信息。

add_trailer

意思為將自定義的頭信息添加到響應(yīng)頭的末尾,指令為 add_trailer name value [always];,可以用在 http {}, server {}, location {}, if in location {} 上下文中,只有當(dāng)響應(yīng)狀態(tài)碼等于 200, 201, 206, 301, 302, 303, 307, 或 308 時(shí)生效,如果 always 參數(shù)指定了,頭信息將無(wú)視狀態(tài)碼,在所有響應(yīng)中強(qiáng)制返回。

注意: 可以聲明多個(gè) add_trailer 指令,當(dāng)且僅當(dāng) 當(dāng)前區(qū)塊沒(méi)有 add_trailer 的時(shí)候,才會(huì)繼承上級(jí)聲明的 add_trailer 信息

舉例參考 add_header 的例子。

expires

啟用或禁用,添加或修改響應(yīng)頭中的 "Expires" 和 "Cache-Control" 字段,指令為 expires [modified] time; 或者 expires epoch | max | off; 當(dāng)響應(yīng)狀態(tài)碼等于200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), 或 308 (1.13.0) 時(shí)生效,time 參數(shù)可以為正時(shí)間或者負(fù)時(shí)間。"Expires" 字段中的時(shí)間計(jì)算為當(dāng)前時(shí)間和在 time 中指定的時(shí)間總和。如果使用該 modified 參數(shù)(0.7.0,0.6.32),則將時(shí)間計(jì)算為文件修改時(shí)間與 time 指令中指定的時(shí)間之和。

此外,可以使用 "@" 前綴(0.7.9,0.6.34)指定一天中的時(shí)間:expires @15h30m;

"Cache-Control" 字段的內(nèi)容取決于指定時(shí)間的符號(hào):

  • 時(shí)間為負(fù)數(shù) - "Cache-Control: no-cache"
  • 時(shí)間為正數(shù)或者0 - "Cache-Control: max-age=t" t 是指令中指定的時(shí)間,以秒為單位

epoch 參數(shù)將 "Expires" 設(shè)置為值 "Thu, 01 Jan 1970 00:00:01 GMT",將"Cache-Control" 設(shè)置為 "no-cache"。

max 參數(shù)將 "Expires" 設(shè)置為值 "Thu, 31 Dec 2037 23:55:55 GMT",將"Cache-Control" 設(shè)置為 10 年。

off 參數(shù)禁用添加或修改 "Expires" 和 "Cache-Control" 響應(yīng)頭字段。

最后一個(gè)參數(shù)值可以包含變量(1.7.9): 例如:

map $sent_http_content_type $expires {
 default   off;
 application/pdf 42d;
 ~image/   max;
}

expires $expires;

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:黃山 賀州 湖北 湘潭 通遼 煙臺(tái) 山南 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Nginx 操作響應(yīng)頭信息的實(shí)現(xiàn)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    鄄城县| 江川县| 蚌埠市| 光山县| 额尔古纳市| 遂平县| 乌什县| 金乡县| 阆中市| 霍山县| 综艺| 五峰| 广水市| 红安县| 石河子市| 通化市| 开江县| 兴城市| 阿勒泰市| 五大连池市| 中江县| 镇宁| 兴海县| 会泽县| 隆安县| 金坛市| 丹巴县| 江达县| 九江市| 沽源县| 东海县| 永靖县| 永嘉县| 科技| 鄱阳县| 景宁| 元谋县| 乳源| 中西区| 顺平县| 铜山县|