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

Nginx 中 proxy_intercept_errors 實(shí)現(xiàn)后端 502/504 錯(cuò)誤的優(yōu)雅降級(jí)

 更新時(shí)間:2026年04月19日 10:56:55   作者:冷漠man  
本文主要介紹了Nginx 中 proxy_intercept_errors 實(shí)現(xiàn)后端 502/504 錯(cuò)誤的優(yōu)雅降級(jí),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

proxy_intercept_errors的作用是當(dāng)后端返回非空體的4xx/5xx響應(yīng)時(shí),中斷默認(rèn)錯(cuò)誤處理并交由error_page處理;前提為開啟該指令且對(duì)應(yīng)狀態(tài)碼已通過error_page顯式綁定。

 proxy_intercept_errors 的作用與前提條件

proxy_intercept_errors 本身不生成錯(cuò)誤頁,也不主動(dòng)重定向。它的核心作用是:當(dāng)后端返回 4xx 或 5xx 響應(yīng)(且響應(yīng)體非空)時(shí),允許 Nginx 中斷默認(rèn)錯(cuò)誤處理流程,轉(zhuǎn)而使用 error_page 指令定義的自定義響應(yīng)。

要讓 502/504 觸發(fā)降級(jí)頁,必須滿足兩個(gè)前提:

  • Nginx 配置中開啟 proxy_intercept_errors on;
  • 對(duì)應(yīng)狀態(tài)碼(如 502、504)已通過 error_page 顯式綁定到一個(gè) location 或 URI

正確配置 502/504 降級(jí)頁的最小完整示例

以下配置將所有 502 和 504 錯(cuò)誤統(tǒng)一跳轉(zhuǎn)到靜態(tài)降級(jí)頁 /fallback.html(由 Nginx 直接返回,不經(jīng)過后端):

location / {
    proxy_pass http://backend;
    proxy_intercept_errors on;
<pre class="brush:php;toolbar:false;"># 關(guān)鍵:顯式捕獲 502 和 504,并指向內(nèi)部 location
error_page 502 504 = @fallback;

內(nèi)部 location,不對(duì)外暴露,僅用于服務(wù)降級(jí)頁

location @fallback { internal; root /usr/share/nginx/html; try_files /fallback.html =404; }

注意:= @fallback 中的等號(hào)表示“內(nèi)部重定向并保持狀態(tài)碼”,而 = 后不跟數(shù)字(如 =200)則會(huì)保留原始狀態(tài)碼;但這里用 @fallback 是命名 location,需配合 internal 使用,確保無法被外部直接訪問。

進(jìn)階技巧:按路徑或上游分組設(shè)置不同降級(jí)頁

若業(yè)務(wù)中部分接口可降級(jí)、部分不可降級(jí),或不同模塊需不同提示頁,可通過嵌套 location 或 map 變量實(shí)現(xiàn)差異化處理:

  • 為關(guān)鍵 API 單獨(dú)配置:location /api/pay { ... error_page 502 504 = @pay_fallback; }
  • 用 map 根據(jù) upstream 名動(dòng)態(tài)設(shè)降級(jí)頁路徑:
map $upstream_addr $fallback_path {
  ~10\.0\.1\.10:8080 "/fallback-core.html";
  ~10\.0\.1\.11:8080 "/fallback-user.html";
  default "/fallback-generic.html";
  }

常見陷阱與驗(yàn)證要點(diǎn)

實(shí)際部署中容易忽略的關(guān)鍵點(diǎn):

  • 后端必須返回非空響應(yīng)體:Nginx 默認(rèn)對(duì)空體的 502/504 不觸發(fā) error_page,即使開了 proxy_intercept_errors??稍跍y(cè)試時(shí)用 curl -v http://test/502 檢查響應(yīng)頭和 body 是否存在
  • 不要混用 return 和 error_page:例如在 location 中寫 return 502;,此時(shí)未經(jīng)過 proxy,proxy_intercept_errors 完全不生效
  • 日志中確認(rèn)是否命中:開啟 error_log /var/log/nginx/error.log notice;,觸發(fā)錯(cuò)誤時(shí)觀察日志是否出現(xiàn) error_page 相關(guān)提示,或使用 log_subrequest on 查看內(nèi)部重定向過程

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

相關(guān)文章

  • nginx實(shí)現(xiàn)ip限流的具體示例

    nginx實(shí)現(xiàn)ip限流的具體示例

    限流的方式油很多種,本文主要介紹了nginx實(shí)現(xiàn)ip限流的具體示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • Nginx 配置TCP代理轉(zhuǎn)發(fā)的實(shí)現(xiàn)

    Nginx 配置TCP代理轉(zhuǎn)發(fā)的實(shí)現(xiàn)

    本文主要介紹了使用Nginx新版的stream方式,實(shí)現(xiàn)TCP/UDP代理轉(zhuǎn)發(fā),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-10-10
  • OpenResty是什么,OpenResty和Nginx的區(qū)別?

    OpenResty是什么,OpenResty和Nginx的區(qū)別?

    Nginx作為一款輕量級(jí)、高性能的Web服務(wù)器,傳統(tǒng)局限性也很明顯:靜態(tài)配置、邏輯擴(kuò)展依賴C模塊開發(fā),使得它在需要?jiǎng)討B(tài)業(yè)務(wù)邏輯的場(chǎng)景中顯得捉襟見肘,<BR>而OpenResty的出現(xiàn),打破了這一僵局,它通過將Lua腳本深度集成到Nginx中,將“靜態(tài)代理服務(wù)器”升級(jí)為“動(dòng)態(tài)應(yīng)用平臺(tái)”
    2025-04-04
  • Nginx設(shè)置成服務(wù)并開機(jī)自動(dòng)啟動(dòng)的配置

    Nginx設(shè)置成服務(wù)并開機(jī)自動(dòng)啟動(dòng)的配置

    Nginx?是一個(gè)高性能的HTTP和反向代理web服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù),接下來通過本文給大家介紹Nginx設(shè)置成服務(wù)并開機(jī)自動(dòng)啟動(dòng)的配置,需要的朋友可以參考下
    2022-01-01
  • 重啟或殺掉Nginx進(jìn)程后丟失nginx.pid的解決辦法

    重啟或殺掉Nginx進(jìn)程后丟失nginx.pid的解決辦法

    在重啟或殺掉nginx進(jìn)程后,會(huì)丟失nginx.pid文件,導(dǎo)致nginx無法正常啟動(dòng),這里分享下解決方法
    2014-01-01
  • Nginx中keepalive配置小結(jié)

    Nginx中keepalive配置小結(jié)

    本文介紹了Nginx keepalive配置的概念和作用,闡述了keepalive連接的基本原理和優(yōu)勢(shì),并給出了一些常用的配置示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • Nginx反向代理入門實(shí)戰(zhàn)指南

    Nginx反向代理入門實(shí)戰(zhàn)指南

    反向代理:反向代理也叫reverse proxy,指的是代理外網(wǎng)用戶的請(qǐng)求到內(nèi)部的指定web服務(wù)器,并將數(shù)據(jù)返回給用戶的一種方式,這是用的比較多的一種方式,下面這篇文章主要給大家介紹了關(guān)于Nginx反向代理的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Nginx網(wǎng)站服務(wù)過程詳解

    Nginx網(wǎng)站服務(wù)過程詳解

    Nginx是一款高性能、異步非阻塞工作模式、輕量級(jí)Web服務(wù)軟件,這篇文章主要介紹了Nginx網(wǎng)站服務(wù)的相關(guān)知識(shí),需要的朋友可以參考下
    2023-06-06
  • Nginx的偽靜態(tài)配置中使用rewrite來實(shí)現(xiàn)自動(dòng)補(bǔ)全的實(shí)例

    Nginx的偽靜態(tài)配置中使用rewrite來實(shí)現(xiàn)自動(dòng)補(bǔ)全的實(shí)例

    這篇文章主要介紹了Nginx的偽靜態(tài)配置中使用rewrite來實(shí)現(xiàn)自動(dòng)補(bǔ)全的實(shí)例,文中對(duì)rewrite的相關(guān)參數(shù)和正則表達(dá)使用也做了介紹,需要的朋友可以參考下
    2015-12-12
  • 使用nginx實(shí)現(xiàn)一個(gè)端口和ip訪問多個(gè)vue前端的全過程

    使用nginx實(shí)現(xiàn)一個(gè)端口和ip訪問多個(gè)vue前端的全過程

    為滿足單端口訪問多個(gè)前端應(yīng)用的需求,需要對(duì)nginx進(jìn)行配置,同時(shí)修改vue項(xiàng)目的publicPath參數(shù),這篇文章主要介紹了使用nginx實(shí)現(xiàn)一個(gè)端口和ip訪問多個(gè)vue前端的相關(guān)資料,需要的朋友可以參考下
    2024-09-09

最新評(píng)論

新宾| 尚志市| 临海市| 惠东县| 深圳市| 永嘉县| 壶关县| 延长县| 广元市| 中方县| 托克托县| 宁城县| 都兰县| 吉首市| 绍兴县| 平谷区| 资中县| 定兴县| 永顺县| 安图县| 东方市| 东丰县| 长宁县| 左云县| 叙永县| 西乌| 奉新县| 新源县| 虹口区| 廉江市| 天台县| 合川市| 六枝特区| 凌源市| 榆林市| 晋州市| 昌邑市| 肇庆市| 会理县| 屏东市| 黎川县|