最近個人網(wǎng)站提示Nginx 504 Gateway Time-out,錯誤訪問出錯,經(jīng)分析找到504 Gateway原因及解決方法如下。

Nginx報 504 Gateway原因
Nginx報504 gateway timeout錯誤引起,一個是文件配置問題,另一個是相關處理時長了,最后也有可能是資源不足導致了,一起來看看。
504 Gateway Time-out字面意思,我們可以理解為網(wǎng)頁請求超時,也是瀏覽網(wǎng)站網(wǎng)頁所發(fā)出的請求沒有反應或者未響應,在網(wǎng)站phpcms層面來說,是請求未能夠執(zhí)行相應的PHP-CGI程序,或者PHP-CGI程序未能做出相應的處理,又或者是CGI程序的響應處理結果未能夠反饋到瀏覽器或者未能及時反饋到瀏覽器。
來自火狐Mozilla對504 Gateway Timeout解讀
504?Gateway Timeout?是一種HTTP協(xié)議的服務器端錯誤狀態(tài)代碼,表示扮演網(wǎng)關或者代理的服務器無法在規(guī)定的時間內(nèi)獲得想要的響應。
Gateway?(網(wǎng)關)在計算機網(wǎng)絡體系中可以指代不同的設備,504 錯誤通常不是在客戶端可以修復的,而是需要由途徑的Web服務器或者代理服務器對其進行修復。
瀏覽器兼容性

Nginx 504 gateway time-out怎么解決?
504 Gateway Time-out錯誤多是存在于Nginx網(wǎng)站服務器環(huán)境下,多與nginx.conf與php-fpm.conf設置是否正確合理有關。504GatewayTime-out錯誤的解決方法是根據(jù)網(wǎng)站服務器性能及網(wǎng)站流量等諸多因素整合考慮,正確合理的設置niginx.conf和php-fpm.conf配置。
進行正確合理nginx.conf配置,我們需要首先了解和清楚我們網(wǎng)站服務器的配置性能,包括CPU、內(nèi)存等,并對網(wǎng)站服務器進行必要的性能測試,從而準確的掌握網(wǎng)站服務器自身性能狀況;
504 gateway timeout錯誤解讀
504 Gateway Time-out就字面意思,我們可以理解為網(wǎng)頁請求超時,也就是瀏覽網(wǎng)站網(wǎng)頁所發(fā)出的請求沒有反應或者未響應,在網(wǎng)站程序?qū)用鎭碚f,就是請求未能夠執(zhí)行相應的PHP-CGI程序,或者PHP-CGI程序未能做出相應的處理,又或者是CGI程序的響應處理結果未能夠反饋到瀏覽器或者未能及時反饋到瀏覽器。
是由于nginx默認的fastcgi進程響應緩沖區(qū)太小造成: 這種情況下導致fastcgi進程被掛起,如果fastcgi服務隊這個掛起處理不是很好的話,就可能提示“504 Gateway Time-out”錯誤。
每次您在瀏覽器中訪問網(wǎng)站時,瀏覽器都會向托管該網(wǎng)站的Web服務器發(fā)送請求。服務器處理請求并以請求的資源響應。
服務器響應包括許多HTTP狀態(tài)代碼之一,以指示對瀏覽器的響應狀態(tài)。但是,并非所有這些HTTP狀態(tài)代碼都是錯誤。例如,狀態(tài)碼為200 OK表示服務器成功處理了請求,并且“一切都很好”。
HTTP狀態(tài)代碼的5xx類指示服務器出了點問題,服務器知道了此錯誤,并且無法執(zhí)行客戶端請求。結果,它們也稱為服務器錯誤5xx狀態(tài)代碼。
正式,五個狀態(tài)代碼的5XX類(下指定500,501,502,503,504)。您可能臨到許多非官方的代碼太(506,507,509,520,等)。
504網(wǎng)關錯誤 視頻教程? ?
來自Youtube:HTTP Status Code 504: What Is a 504 Error “Gateway Time Out” Response Code?
視頻教程原文:https://www.youtube.com/watch?v=zPBkuH7U-Cc
1,網(wǎng)站主機資源不足
如下圖所示:該主機內(nèi)存128.00MB,根本跑不動WordPress網(wǎng)站程序所以資料不足會導致504 gateway timeout。
把主機內(nèi)存提升到512M或更高就可以解決了。
2,服務器運行環(huán)境
修改Nginx的服務器配置,
通過服務器優(yōu)化設置,可以把Nginx的超時時間上調(diào)??纯磿r間是否符合要求,在nginx.config里面的三個參數(shù):
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
以上的單位是秒。
如果使用了Nginx的代理,可以在塊里加上:
proxy_connect_timeout 300s;
proxy_send_timeout 300s;
proxy_read_timeout 300s;
3,其他原因
根據(jù)具體服務器進行排查,發(fā)現(xiàn)網(wǎng)站的具體問題進行修改。具體錯誤可以網(wǎng)上查找解決辦法,或者留言聯(lián)系博主幫你解決此類問題。
除此之外,還有以下原因會造成504 gateway time-out:
- 首先需要確定的是后端服務器啟動沒有,當然在這里是php-fpm進行啟動沒有。
- 其次是確定php-fpm的worker進程是否夠用。
- FastCGI緩存或代理的緩存情況。
- PHP執(zhí)行時間長。
更多關于504錯誤:
nginx 出現(xiàn)504 Gateway Time-out的解決方法 https://blog.csdn.net/weixin_30872157/article/details/97325365 https://blog.csdn.net/wjsaxx/article/details/94354051
504 Gateway Timeout – HTTP | MDN:? https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status/504
-
504 gateway time out 錯誤解讀
504 Gateway Time-out就字面意思,我們可以理解為網(wǎng)頁請求超時,也就是瀏覽網(wǎng)站網(wǎng)頁所發(fā)出的請求沒有反應或者未響應5年前 -
504 gateway time out 錯誤解讀
5年前 -
504 Gateway Time-out 產(chǎn)生的原因不止本文介紹的這些,還有更多504 Gateway Time-out?錯誤和診斷,后續(xù)為大家解密。
4年前


