欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx中常見(jiàn)header配置及修改

 更新時(shí)間:2023年10月10日 15:08:24   作者:Linux運(yùn)維阿銘  
在nginx中,經(jīng)常需要因?yàn)楦鞣N原因,修改header,本文就來(lái)介紹一下header配置及修改,具有一定的參考價(jià)值,感興趣的可以了解一下

在 nginx 中,經(jīng)常需要因?yàn)楦鞣N原因,修改 header,所以今天整理下 nginx 中 header 的一些指令

header 是 http 中的消息頭,里面包含很多信息,通常又分為 request headers(請(qǐng)求頭)和 response headers(響應(yīng)頭)

客戶端向服務(wù)器發(fā)送的請(qǐng)求中包含請(qǐng)求頭,服務(wù)器向客戶端回復(fù)的響應(yīng)中包含響應(yīng)頭,消息頭通常是以冒號(hào)分隔的鍵值對(duì)

在 nginx 中有 headers 模塊,其中有三條指令,分別是:

  • add_header
  • add_trailer
  • expires

expires 就不用多說(shuō)了,用來(lái)控制緩存時(shí)間的,證書(shū)就是緩存的時(shí)間,0 或負(fù)數(shù)就是緩存無(wú)效

add_trailer 和 add_header 一樣的效果,都是在 headers 中添加字段,不過(guò) trailer 是添加到響應(yīng)頭的末尾

nginx 中通常就通過(guò)這三個(gè)控制 response 的 headers 信息

另外涉及到 headers 修改的指令,通常是在反向代理的時(shí)候,也就是 proxy_pass 的時(shí)候,有以下幾個(gè)指令可以操作 header

  • proxy_set_header
  • proxy_ignore_headers
  • proxy_pass_header
  • proxy_hide_header
  • proxy_pass_request_headers

proxy_set_header 通常用的最多,可以在提交給上游服務(wù)器的 header 中添加或重寫(xiě) header,比如通常用到的,反向代理的時(shí)候,添加客戶端 IP、XFF 等字段

proxy_ignore_headers 通常用來(lái)禁用上游服務(wù)器的某些響應(yīng)字段,如:

  • X-Accel-Expires
  • Expires
  • Cache-Control
  • Set-Cookie
  • Vary
  • X-Accel-Redirect
  • X-Accel-Limit-Rate
  • X-Accel-Buffering
  • X-Accel-Charset

不過(guò)根據(jù)測(cè)試發(fā)現(xiàn),根本不起任何作用,寫(xiě)了個(gè)簡(jiǎn)單的 php 腳本,用 proxy_pass 代理,在 php 中用 header 寫(xiě) Expires 字段

訪問(wèn)查看 response headers

接著,用 proxy_ignore_headers 忽略掉 Expires 字段,再次請(qǐng)求看下效果

沒(méi)有任何效果,開(kāi)始以為是在 php 中寫(xiě)不行,寫(xiě)到上游 nginx 配置中嘗試

訪問(wèn)測(cè)試,仍然沒(méi)有忽略掉

生效的,仍然是后端的 expires,從官方以及網(wǎng)上看到的文章,我理解,都是忽略上游設(shè)置的 Expires

不過(guò) proxy_hide_header 可以將上游響應(yīng)中的 header 中的字段忽略掉

請(qǐng)求如下:

proxy_pass_header 正好和 proxy_hide_header 相反,有些 header 字段 nginx 默認(rèn)不會(huì)響應(yīng)到代理,nginx 官方文檔中舉例說(shuō) Date、Server、X-Pad、X-Accel 等字段,測(cè)試,同樣在 php 中設(shè)置 Server

在 nginx 中設(shè)置 proxy_pass_header Server

proxy_pass_request_headers 則是控制客戶端 request 的 header,是否傳遞到上游服務(wù)器,默認(rèn)是開(kāi)啟的,也就是客戶端請(qǐng)求攜帶的 header,都會(huì)被轉(zhuǎn)發(fā)到上游服務(wù)器,還是拿 php 腳本來(lái)獲取 request_header 信息

查看訪問(wèn)結(jié)果:

在 nginx 中關(guān)閉 proxy_pass_request_headers

再次獲取訪問(wèn)結(jié)果

以上就是 nginx 自帶的調(diào)整,設(shè)置 header 的一些指令,通常調(diào)整 header 最常見(jiàn)的幾個(gè)場(chǎng)景:

  • 通過(guò) add_header 添加允許跨域
  • 通過(guò) header 頭,設(shè)置緩存生效時(shí)間
  • 通過(guò)添加自定義 header,做灰度
  • 反向代理,將自定義字段傳遞到后端,特別 xff 獲取真實(shí)客戶端 IP

除了自帶的 headers 模塊,也可以安裝第三方的 headers-more 模塊,對(duì)應(yīng) headers 的控制更全面,更方便,headers-more 是 openresty 的一個(gè)模塊,openresty 就自帶了,nginx 的話,需要編譯添加動(dòng)態(tài)模塊

headers-more 模塊下載地址:GitHub - openresty/headers-more-nginx-module: Set, add, and clear arbitrary output headers in NGINX http servers

下載好之后編輯添加

通過(guò) make modules,編譯動(dòng)態(tài)模塊文件,生成在 objs 目錄下,將.so 文件復(fù)制到 modules 目錄下,在 nginx 配置文件中通過(guò) load_modules 加載

這樣 headers-more 模塊就添加好了

該模塊主要有 4 個(gè)指令:

  • more_set_headers 用于添加、修改、清除響應(yīng)頭
  • more_clear_headers 用于清除響應(yīng)頭
  • more_set_input_headers 用于添加、修改、清除請(qǐng)求頭
  • more_clear_input_headers 用于清除請(qǐng)求頭

headers-more 相比 nginx 自帶的 headers,處理 headers 更方便,更靈活,所以,如果有 nginx 自帶 headers 模塊滿足不了的需求,可以添加 headers-more 模塊

到此這篇關(guān)于Nginx中常見(jiàn)header配置及修改的文章就介紹到這了,更多相關(guān)Nginx 常見(jiàn)header配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解用nginx+WordPress搭建個(gè)人博客全流程

    詳解用nginx+WordPress搭建個(gè)人博客全流程

    這篇文章主要介紹了詳解用nginx+WordPress搭建個(gè)人博客全流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 基于nginx設(shè)置瀏覽器協(xié)商緩存過(guò)程詳解

    基于nginx設(shè)置瀏覽器協(xié)商緩存過(guò)程詳解

    這篇文章主要介紹了基于nginx設(shè)置瀏覽器協(xié)商緩存過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Nginx安裝配置的實(shí)現(xiàn)示例

    Nginx安裝配置的實(shí)現(xiàn)示例

    本文主要介紹了Nginx安裝配置的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • Nginx安裝后常用功能配置基礎(chǔ)篇

    Nginx安裝后常用功能配置基礎(chǔ)篇

    這篇文章主要介紹了Nginx安裝后常用的功能配置,為了在使用中更高效簡(jiǎn)潔,Nginx安裝后通常會(huì)進(jìn)行一些常用的配置,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-03-03
  • linux上nginx安裝部署及使用過(guò)程詳解

    linux上nginx安裝部署及使用過(guò)程詳解

    這篇文章主要介紹了linux上nginx安裝部署及使用過(guò)程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-11-11
  • nginx負(fù)載功能+nfs服務(wù)器功能解析

    nginx負(fù)載功能+nfs服務(wù)器功能解析

    這篇文章主要介紹了nginx負(fù)載功能+nfs服務(wù)器,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Nginx實(shí)現(xiàn)動(dòng)態(tài)攔截非法訪問(wèn)ip的方法

    Nginx實(shí)現(xiàn)動(dòng)態(tài)攔截非法訪問(wèn)ip的方法

    最近在訪問(wèn)時(shí)不時(shí)會(huì)被暴力刷量,爬蟲(chóng)和惡意攻擊導(dǎo)致數(shù)據(jù)庫(kù),服務(wù)等癱瘓,所以本文介紹了在Nginx上實(shí)現(xiàn)一個(gè)動(dòng)態(tài)攔截IP的方法,具體是當(dāng)某個(gè)IP在1分鐘內(nèi)訪問(wèn)超過(guò)60次時(shí),將其加入Redis并攔截,攔截時(shí)間默認(rèn)1天,需要的朋友可以參考下
    2025-02-02
  • Nginx 操作響應(yīng)頭信息的實(shí)現(xiàn)

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

    這篇文章主要介紹了Nginx 操作響應(yīng)頭信息的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因

    Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因

    一般在訪問(wèn)某些網(wǎng)站或者我們?cè)谧霰镜販y(cè)試的時(shí)候,服務(wù)器突然返回502?Bad?Gateway?Nginx,這種問(wèn)題相信大家也遇到不少了,下面這篇文章主要給大家介紹了關(guān)于Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Nginx下讓W(xué)ordPress支持固定鏈接的偽靜態(tài)規(guī)則

    Nginx下讓W(xué)ordPress支持固定鏈接的偽靜態(tài)規(guī)則

    Nginx下讓W(xué)ordPress支持固定鏈接的偽靜態(tài)規(guī)則,要讓nginx支持wordpress固定鏈接非常簡(jiǎn)單,需要自己進(jìn)行添加點(diǎn)配置代碼
    2013-02-02

最新評(píng)論