久久青草精品A片狠狠,日韩欧美视频一区二区,亚洲国码AV日韩,国产精品黄在

Nginx 502錯(cuò)誤原因和解決方法總結(jié)

2018-11-08 08:43:27 11492

一. 前沿

不管你是做運(yùn)維還是做開(kāi)發(fā),哪怕你是游客,時(shí)不時(shí)會(huì)遇到502 Bad Gateway或504 Gateway Time-out。出現(xiàn)這頁(yè)面,把服務(wù)重啟下,再實(shí)在不行重啟下服務(wù)器,問(wèn)題就解決了,特殊情況請(qǐng)繼續(xù)閱讀。

二. 狀態(tài)碼解釋

    502 Bad Gateway:作為網(wǎng)關(guān)或者代理工作的服務(wù)器嘗試執(zhí)行請(qǐng)求時(shí),從上游服務(wù)器接收到無(wú)效的響應(yīng)。

    504 Gateway Time-out:作為網(wǎng)關(guān)或者代理工作的服務(wù)器嘗試執(zhí)行請(qǐng)求時(shí),未能及時(shí)從上游服務(wù)器(URI標(biāo)識(shí)出的服務(wù)器,例如HTTP、FTP、LDAP)或者輔助服務(wù)器(例如DNS)收到響應(yīng)。

三. 502 Bad Gateway原因分析

    將請(qǐng)求提交給網(wǎng)關(guān)如php-fpm執(zhí)行,但是由于某些原因沒(méi)有執(zhí)行完畢導(dǎo)致php-fpm進(jìn)程終止執(zhí)行。說(shuō)到此,這個(gè)問(wèn)題就很明了了,與網(wǎng)關(guān)服務(wù)如php-fpm的配置有關(guān)了。

    php-fpm.conf配置文件中有兩個(gè)參數(shù)就需要你考慮到,分別是max_children和request_terminate_timeout。

    max_children最大子進(jìn)程數(shù),在高并發(fā)請(qǐng)求下,達(dá)到php-fpm最大響應(yīng)數(shù),后續(xù)的請(qǐng)求就會(huì)出現(xiàn)502錯(cuò)誤的。可以通過(guò)netstat命令來(lái)查看當(dāng)前連接數(shù)。

    request_terminate_timeout設(shè)置單個(gè)請(qǐng)求的超時(shí)終止時(shí)間。還應(yīng)該注意到php.ini中的max_execution_time參數(shù)。當(dāng)請(qǐng)求終止時(shí),也會(huì)出現(xiàn)502錯(cuò)誤的。

    當(dāng)積累了大量的php請(qǐng)求,你重啟php-fpm釋放資源,但一兩分鐘不到,502又再次呈現(xiàn),這是什么原因?qū)е碌哪兀?這時(shí)還應(yīng)該考慮到數(shù)據(jù)庫(kù),查看下數(shù)據(jù)庫(kù)進(jìn)程是否有大量的locked進(jìn)程,數(shù)據(jù)庫(kù)死鎖導(dǎo)致超時(shí),前端終止了繼續(xù)請(qǐng)求,但是SQL語(yǔ)句還在等待釋放鎖,這時(shí)就要重啟數(shù)據(jù)庫(kù)服務(wù)了或kill掉死鎖SQL進(jìn)程了。

四. 504 Gateway Time-out原因分析

    504錯(cuò)誤一般是與nginx.conf配置有關(guān)了。主要與以下幾個(gè)參數(shù)有關(guān):fastcgi_connect_timeout、fastcgi_send_timeout、fastcgi_read_timeout、fastcgi_buffer_size、fastcgi_buffers、fastcgi_busy_buffers_size、fastcgi_temp_file_write_size、fastcgi_intercept_errors。特別是前三個(gè)超時(shí)時(shí)間。如果fastcgi緩沖區(qū)太小會(huì)導(dǎo)致fastcgi進(jìn)程被掛起從而演變?yōu)?04錯(cuò)誤。

五. 小結(jié)

總而言之,502錯(cuò)誤主要從四個(gè)方向入手:

max_children

request_terminate_timeout、max_execution_time

數(shù)據(jù)庫(kù)

網(wǎng)關(guān)服務(wù)是否啟動(dòng)如php-fpm

504錯(cuò)誤主要查看nginx.conf關(guān)于網(wǎng)關(guān)如fastcgi的配置。

提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題: