nginx反向代理60s超時(shí)報(bào)錯(cuò)問題解決
情況描述:由于網(wǎng)絡(luò)原因,必須經(jīng)過反向代理去分發(fā)不同的服務(wù)功能,同時(shí)由于代理的服務(wù)特殊,執(zhí)行時(shí)間通常會(huì)很長,所以超過60秒就會(huì)報(bào)錯(cuò)。經(jīng)排查,未經(jīng)由nginx反向代理,直接訪問代理服務(wù)并不會(huì)出現(xiàn)60超時(shí)問題。報(bào)錯(cuò)內(nèi)容:
An error occurred.
Sorry, the page you are looking for is currently unavailable.
Please try again later.
If you are the system administrator of this resource then you should check the error log for details.
Faithfully yours, nginx.
報(bào)錯(cuò)如圖:
原因分析和處理:網(wǎng)上百度說是nginx超時(shí)問題引起的,然后找到很多關(guān)于長連接keepalive_timeout,客戶端請(qǐng)求體響應(yīng)時(shí)間client_body_timeout,響應(yīng)時(shí)間send_timeout,客戶端消息頭讀取時(shí)間client_header_timeout等參數(shù)的配置,但是經(jīng)過測試,均無效果。
后增加了proxy_read_timeout參數(shù),設(shè)置了超過60秒,問題解決。
參數(shù)解釋:
nginx中的proxy_read_timeout指令用于設(shè)置代理連接的超時(shí)時(shí)間。當(dāng)nginx作為代理服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求給后端服務(wù)器時(shí),如果后端服務(wù)器在指定的時(shí)間內(nèi)沒有響應(yīng),nginx將終止連接并返回錯(cuò)誤。
該指令的默認(rèn)值為60秒,可以根據(jù)需要進(jìn)行調(diào)整。較短的超時(shí)時(shí)間可以更快地檢測到后端服務(wù)器的故障,但同時(shí)也可能因?yàn)榉?wù)器響應(yīng)時(shí)間過長而誤判為故障。較長的超時(shí)時(shí)間則可以容忍后端服務(wù)器的響應(yīng)延遲,但也會(huì)增加客戶端請(qǐng)求的等待時(shí)間。
需要注意的是,proxy_read_timeout指令只控制讀取響應(yīng)的超時(shí)時(shí)間,不包括與后端服務(wù)器建立連接的時(shí)間。如果需要設(shè)置連接超時(shí)時(shí)間,可以使用proxy_connect_timeout指令。
到此這篇關(guān)于nginx反向代理60s超時(shí)報(bào)錯(cuò)問題解決的文章就介紹到這了,更多相關(guān)nginx反向代理超時(shí)報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx FastCGI錯(cuò)誤Primary script unknown解決辦法
這篇文章主要介紹了nginx錯(cuò)誤Primary script unknown解決辦法,需要的朋友可以參考下2014-03-03nginx配置location總結(jié)location正則寫法及rewrite規(guī)則寫法
本文詳細(xì)講述了Nginx location正則寫法,Nginx 的Rewrite規(guī)則以及Nginx.conf中if指令與全局變量2018-10-10Nginx(PHP/fastcgi)的PATH_INFO問題
PATH_INFO是一個(gè)CGI 1.1的標(biāo)準(zhǔn),經(jīng)常用來做為傳參載體. 比如, 我們可以使用PATH_INFO來代替Rewrite來實(shí)現(xiàn)偽靜態(tài)頁面, 另外不少PHP框架也使用PATH_INFO來作為路由載體.2011-08-08nginx-ingress-controller日志持久化方案的解決
這篇文章主要介紹了nginx-ingress-controller日志持久化方案的解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03CentOS 7.3.1611編譯安裝Nginx1.10.3+MySQL5.7.16+PHP7.1.2
這篇文章主要介紹了CentOS 7.3.1611編譯安裝Nginx1.10.3+MySQL5.7.16+PHP7.1.2,需要的朋友可以參考下2018-01-01