溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php中503錯(cuò)誤出現(xiàn)的原因

發(fā)布時(shí)間:2020-07-01 14:55:11 來(lái)源:億速云 閱讀:431 作者:元一 欄目:編程語(yǔ)言

今天就跟大家聊聊有關(guān)php中503錯(cuò)誤出現(xiàn)的原因,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

定義:

503是一種HTTPS狀態(tài)碼。英文名503 Service Unavailable與404(404 Not Found)是同屬一種網(wǎng)頁(yè)狀態(tài)出錯(cuò)碼。前者是服務(wù)器出錯(cuò)的一種返回狀態(tài),后者是網(wǎng)頁(yè)程序沒(méi)有相關(guān)的結(jié)果后返回的一種狀態(tài),需要優(yōu)化網(wǎng)站的時(shí)候通常需要制作404出錯(cuò)頁(yè)以便網(wǎng)站整體優(yōu)化。

由于臨時(shí)的服務(wù)器維護(hù)或者過(guò)載,服務(wù)器當(dāng)前無(wú)法處理請(qǐng)求。這個(gè)狀況是臨時(shí)的,并且將在一段時(shí)間以后恢復(fù)。如果能夠預(yù)計(jì)延遲時(shí)間,那么響應(yīng)中可以包含一個(gè)Retry-After起頭用以標(biāo)明這個(gè)延遲時(shí)間。如果沒(méi)有給出這個(gè)Retry-After信息,那么客戶端應(yīng)當(dāng)以處理500(Server Internal Error)響應(yīng)的方式處理它。

原因:

一、網(wǎng)頁(yè)出現(xiàn)

1、網(wǎng)絡(luò)管理員可能關(guān)閉應(yīng)用程序池以執(zhí)行維護(hù)。

2、當(dāng)請(qǐng)求到達(dá)時(shí)應(yīng)用程序池隊(duì)列已滿。

3、應(yīng)用程序池標(biāo)識(shí)沒(méi)有使用預(yù)定義賬戶:網(wǎng)絡(luò)服務(wù),而自己配置了標(biāo)識(shí),但是配置的這個(gè)用戶不屬于IIS_WPG

4、應(yīng)用程序池啟用了CPU監(jiān)視,并且設(shè)置了CPU利用率超過(guò)一定百分比關(guān)閉應(yīng)用程序池,而開(kāi)發(fā)人員寫的服務(wù)端頁(yè)面(.asp,.aspx)執(zhí)行效率不高,會(huì)引起CPU的長(zhǎng)時(shí)間占用,最終達(dá)到設(shè)置的百分比,從而引起應(yīng)用程序池關(guān)閉

5、應(yīng)用程序池的性能選項(xiàng)卡的請(qǐng)求隊(duì)列限制所填的數(shù)值太小,默認(rèn)為1000。

6、web.configsystem.web/httpRuntime節(jié)點(diǎn)的appRequestQueueLimit屬性設(shè)置的值太低。

二、主機(jī)站點(diǎn)

主要原因有兩點(diǎn):

1、該站點(diǎn)正在被攻擊。對(duì)于最新型的攻擊,其實(shí)是ddos的一種派生,原理在于找數(shù)千個(gè)IP,同時(shí)向服務(wù)器的apache發(fā)出請(qǐng)求,然后 立即斷開(kāi),讓apache處于等待狀態(tài),致使apache線程全部被填滿,致使服務(wù)器死機(jī)。

因此,為了保證大多數(shù)客戶的利益,我們給每個(gè) 空間,作出了每19秒64個(gè)php請(qǐng)求的限制。注意,是php請(qǐng)求,一般的圖片請(qǐng)求和html請(qǐng)求不包括在內(nèi)。

2、該程序占用的php線程過(guò)多,有的程序沒(méi)有進(jìn)行好優(yōu)化處理,一個(gè)點(diǎn)擊即可產(chǎn)生數(shù)個(gè),甚至數(shù)十個(gè)php線程。這樣的話,幾個(gè)點(diǎn)擊就可以把該時(shí)段的64個(gè)php線程全部填滿了。因此出現(xiàn)503錯(cuò)誤。建議優(yōu)化一下程序,盡量少用require(“請(qǐng)求”之意)等語(yǔ)句。

解決方法:

1.驗(yàn)證是否已為虛擬服務(wù)器配置了應(yīng)用程序池。默認(rèn)的應(yīng)用程序池是MSSharePointPortalAppPool。請(qǐng)按照下列步驟來(lái)確定虛擬服務(wù)器正在使用的應(yīng)用程序池。

a.單擊“開(kāi)始”,指向“管理工具”,然后單擊“Internet信息服務(wù)(IIS)管理器”。

b.展開(kāi)“ServerName”,展開(kāi)“Web站點(diǎn)”,右鍵單擊虛擬服務(wù)器,然后單擊“屬性”。

c.單擊“主目錄”選項(xiàng)卡。為虛擬服務(wù)器配置的應(yīng)用程序池列在“應(yīng)用程序池”框中。

d.單擊“確定”。

2、驗(yàn)證應(yīng)用程序池帳戶使用的密碼是否正確。IIS不會(huì)自動(dòng)輪詢ActiveDirectory目錄服務(wù)中的密碼更改。如果應(yīng)用程序池帳戶是一個(gè)域帳戶,其密碼已過(guò)期,則在為此帳戶重新指定一個(gè)新密碼后,您可能會(huì)收到本文“癥狀”部分所描述的錯(cuò)誤信息。

3、驗(yàn)證應(yīng)用程序池帳戶是服務(wù)器上的IIS_WPG組和STS_WPG組的成員。

4、重新啟動(dòng)IIS以回收應(yīng)用程序池。

看完上述內(nèi)容,你們對(duì)php中503錯(cuò)誤出現(xiàn)的原因有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI