服務(wù)器常見(jiàn)錯(cuò)誤代碼500、501、502、503、504、505區(qū)別

服務(wù)器環(huán)境設(shè)定:

  • 以 nginx 作為 web server
  • 以 php 為后端編程語(yǔ)言

500 Internal Server Error (檢查你的代碼吧)

顧名思義500錯(cuò)誤一般是服務(wù)器遇到意外情況,而無(wú)法完成請(qǐng)求;
一般解決思路:查看nginx、php的錯(cuò)誤日志文件;
500 錯(cuò)誤的可能原因:

  • a、編程語(yǔ)言語(yǔ)法錯(cuò)誤,腳本錯(cuò)誤
  • b、并發(fā)高時(shí),因?yàn)橄到y(tǒng)資源限制,不能打開(kāi)過(guò)多的文件描述符(fd)

502:簡(jiǎn)單點(diǎn)說(shuō),處理當(dāng)前 nginx 請(qǐng)求的 php(進(jìn)程O(píng)R服務(wù)器) 已經(jīng)掛掉了;
nginx 在這里充當(dāng)?shù)氖欠聪虼矸?wù)器的角色,是把http協(xié)議請(qǐng)求轉(zhuǎn)成 fastcgi 協(xié)議的請(qǐng)求,通過(guò) fastcgi_pass 指令傳遞給 php-fpm 進(jìn)程,當(dāng)nginx執(zhí)行請(qǐng)求時(shí),卻收到了上游服務(wù)器( php-fpm)的無(wú)效響應(yīng),響應(yīng)內(nèi)容是nginx無(wú)法理解的,就會(huì)返回502 bad gateway;可以嘗試刷新緩存(ob_flush);

503:簡(jiǎn)單點(diǎn)說(shuō),用戶(hù)請(qǐng)求數(shù)(并發(fā))過(guò)大;
當(dāng)前請(qǐng)求用戶(hù)量太多,服務(wù)器為了保護(hù)自己不掛掉,機(jī)智的拒絕了某些用戶(hù)的訪(fǎng)問(wèn),這些用戶(hù)就會(huì)收到503這個(gè)錯(cuò)誤(部分用戶(hù)可正常訪(fǎng)問(wèn));
因?yàn)橐粋€(gè) http 請(qǐng)求會(huì)占用一個(gè) php-fpm 進(jìn)程,瞬時(shí)請(qǐng)求量過(guò)大時(shí),沒(méi)有足夠的 php-fpm 進(jìn)程來(lái)處理請(qǐng)求,就會(huì)返回 503 service unavailable;
常見(jiàn)原因:

1、站點(diǎn)遭到攻擊,在超過(guò)限制時(shí)報(bào)503錯(cuò)誤,待攻擊停止就可以恢復(fù)了;
2、站點(diǎn)規(guī)模較大,并發(fā)請(qǐng)求過(guò)多,這種建議修改優(yōu)化程序或需要升級(jí)更高類(lèi)型主機(jī);
3、程序有錯(cuò)誤,在短時(shí)間內(nèi)產(chǎn)生多次工作進(jìn)程崩潰,會(huì)因IIS7的快速故障防護(hù)功能而關(guān)閉程序池;
4、站點(diǎn)提供下載,當(dāng)帶寬超過(guò)限制時(shí)會(huì)報(bào)錯(cuò),需停止下載功能,或者升級(jí)主機(jī)解決。

504:簡(jiǎn)單點(diǎn)說(shuō),請(qǐng)求超時(shí),頁(yè)面等了半天也沒(méi)打開(kāi),返回504
一般而言,504很少會(huì)遇到,通常是由 nginx 配置不當(dāng)引起;
也可能是腳本邏輯沒(méi)考慮特例情況,比如 SQL 執(zhí)行時(shí)間太久;
專(zhuān)業(yè)點(diǎn)兒說(shuō)就是,單個(gè) php-fpm 進(jìn)程阻塞超過(guò) nginx 的時(shí)間閾值,會(huì)返回 504 gateway timeout,例如,PHP腳本執(zhí)行時(shí)間太長(zhǎng),此時(shí)可查看是否某些代碼邏輯產(chǎn)生了阻塞;
比如你的 nginx 超時(shí)時(shí)間設(shè)為300,但你的請(qǐng)求響應(yīng)時(shí)間為500,超過(guò)了300的閾值,就會(huì)看到504;

以下兩種狀態(tài)極少遇到

501  
服務(wù)器不具備完成請(qǐng)求的功能。例如,服務(wù)器無(wú)法識(shí)別請(qǐng)求方法時(shí)可能會(huì)返回此代碼;
505  
服務(wù)器不支持請(qǐng)求中所用的 HTTP 協(xié)議版本(HTTP 版本不受支持);

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容