最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx中常見header配置及修改

 更新時間:2023年10月10日 15:08:24   作者:Linux運維阿銘  
在nginx中,經常需要因為各種原因,修改header,本文就來介紹一下header配置及修改,具有一定的參考價值,感興趣的可以了解一下

在 nginx 中,經常需要因為各種原因,修改 header,所以今天整理下 nginx 中 header 的一些指令

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

客戶端向服務器發(fā)送的請求中包含請求頭,服務器向客戶端回復的響應中包含響應頭,消息頭通常是以冒號分隔的鍵值對

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

  • add_header
  • add_trailer
  • expires

expires 就不用多說了,用來控制緩存時間的,證書就是緩存的時間,0 或負數就是緩存無效

add_trailer 和 add_header 一樣的效果,都是在 headers 中添加字段,不過 trailer 是添加到響應頭的末尾

nginx 中通常就通過這三個控制 response 的 headers 信息

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

  • proxy_set_header
  • proxy_ignore_headers
  • proxy_pass_header
  • proxy_hide_header
  • proxy_pass_request_headers

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

proxy_ignore_headers 通常用來禁用上游服務器的某些響應字段,如:

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

不過根據測試發(fā)現,根本不起任何作用,寫了個簡單的 php 腳本,用 proxy_pass 代理,在 php 中用 header 寫 Expires 字段

訪問查看 response headers

接著,用 proxy_ignore_headers 忽略掉 Expires 字段,再次請求看下效果

沒有任何效果,開始以為是在 php 中寫不行,寫到上游 nginx 配置中嘗試

訪問測試,仍然沒有忽略掉

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

不過 proxy_hide_header 可以將上游響應中的 header 中的字段忽略掉

請求如下:

proxy_pass_header 正好和 proxy_hide_header 相反,有些 header 字段 nginx 默認不會響應到代理,nginx 官方文檔中舉例說 Date、Server、X-Pad、X-Accel 等字段,測試,同樣在 php 中設置 Server

在 nginx 中設置 proxy_pass_header Server

proxy_pass_request_headers 則是控制客戶端 request 的 header,是否傳遞到上游服務器,默認是開啟的,也就是客戶端請求攜帶的 header,都會被轉發(fā)到上游服務器,還是拿 php 腳本來獲取 request_header 信息

查看訪問結果:

在 nginx 中關閉 proxy_pass_request_headers

再次獲取訪問結果

以上就是 nginx 自帶的調整,設置 header 的一些指令,通常調整 header 最常見的幾個場景:

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

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

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

下載好之后編輯添加

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

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

該模塊主要有 4 個指令:

  • more_set_headers 用于添加、修改、清除響應頭
  • more_clear_headers 用于清除響應頭
  • more_set_input_headers 用于添加、修改、清除請求頭
  • more_clear_input_headers 用于清除請求頭

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

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

相關文章

  • Nginx常用技巧使用實例匯總

    Nginx常用技巧使用實例匯總

    這篇文章主要介紹了Nginx常用技巧使用實例匯總,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • nginx反向代理服務器及負載均衡服務配置方法

    nginx反向代理服務器及負載均衡服務配置方法

    正向代理一般是在客戶端設置代理服務器,通過代理服務器轉發(fā)請求,最終訪問到目標服務器,這篇文章主要介紹了nginx反向代理服務器及負載均衡服務配置方法,需要的朋友可以參考下
    2023-12-12
  • 詳解nginx 的 default_server 定義及匹配規(guī)則

    詳解nginx 的 default_server 定義及匹配規(guī)則

    這篇文章主要介紹了詳解nginx 的 default_server 定義及匹配規(guī)則,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • nginx的安裝以及簡單配置教程

    nginx的安裝以及簡單配置教程

    這篇文章主要給大家介紹了關于nginx的安裝以及簡單配置的相關資料,以下是nginx在各種環(huán)境條件下的安裝與配置過程,其中還分析了中間遇到的坑以及處理方式,需要的朋友可以參考下
    2023-08-08
  • nginx中(13: Permission denied)權限問題的解決辦法

    nginx中(13: Permission denied)權限問題的解決辦法

    "nginx 13: Permission denied" 錯誤通常表示nginx進程沒有足夠的權限來訪問特定的文件或目錄,本文就來介紹一下解決方法,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • nginx關于add_header的坑及解決

    nginx關于add_header的坑及解決

    這篇文章主要介紹了nginx關于add_header的坑及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Nginx獲取客戶端真實IP(real_ip_header)的實現

    Nginx獲取客戶端真實IP(real_ip_header)的實現

    在使用Nginx作為反向代理時,確保獲取客戶端真實IP是關鍵,通過配置real_ip_header和set_real_ip_from,Nginx可以正確解析X-Forwarded-For頭部信息,并更新$remote_addr為客戶端真實IP,下面就來具體介紹一下
    2024-10-10
  • nginx多https證書配置實現

    nginx多https證書配置實現

    本文主要介紹了nginx多https證書配置實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-04-04
  • Docker Nginx容器和Tomcat容器實現負載均衡與動靜分離操作

    Docker Nginx容器和Tomcat容器實現負載均衡與動靜分離操作

    這篇文章主要介紹了Docker Nginx容器和Tomcat容器實現負載均衡與動靜分離操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Nginx配置location匹配順序詳細總結

    Nginx配置location匹配順序詳細總結

    這篇文章主要介紹了Nginx配置location匹配順序詳解,Nginx是十分輕量級的HTTP服務器,Nginx憑借其穩(wěn)定性、低資源消耗、簡單配置和豐富的功能,從十多年前名不見經傳的Web服務器軟件,發(fā)展到如今能夠跟Apache匹敵的地位,需要的朋友可以參考下
    2023-08-08

最新評論

岚皋县| 禹城市| 宜川县| 盐源县| 酒泉市| 图们市| 洪泽县| 陈巴尔虎旗| 轮台县| 礼泉县| 广昌县| 忻州市| 汉寿县| 洪泽县| 南漳县| 凤山市| 普定县| 正定县| 汪清县| 浦江县| 保靖县| 台南市| 磐石市| 溧阳市| 兰西县| 安溪县| 永嘉县| 桐庐县| 安图县| 西城区| 秀山| 景东| 城口县| 广南县| 织金县| 蒙山县| 高密市| 定边县| 福鼎市| 青川县| 商城县|