http500內部服務器錯誤指的是:訪問網站時,瀏覽器接受請求并對其進行處理,然后將請求的資源與HTTP標頭一起發回,其中HTTP包括稱為HTTP狀態代碼的內容,當狀態代碼為500時,說明服務器遇到意外情況,導致服務器無法履行請求。
具體內容如下:
當您訪問網站時,您的瀏覽器會將請求發送到托管該網站的服務器。服務器接受此請求,對其進行處理,并將請求的資源(PHP,HTML,CSS等)與HTTP標頭一起發回。HTTP還包括他們稱之為HTTP狀態代碼的內容。狀態代碼是一種通知您有關請求狀態的方法。它可能是200狀態代碼,表示“一切正常”或500狀態代碼,這意味著出現了問題。有很多不同類型的500狀態錯誤代碼(500,501,502,503,504等),都意味著不同的東西。在這種情況下,http500內部服務器錯誤指示表示服務器遇到意外情況,導致其無法履行請求。
例子:
1.今天遇到一個問題HTTP500內部服務器錯誤,我的解決思路是先恢復父項,不行再添加權限,這兩步做完還是報錯,我又查看了安全軟件的日志和隔離文件但是也沒有發現被隔離的文件。網站還是500報錯,我又檢查了數據庫的配置文件沒有問題,數據庫所在的服務器正常運行。陷入了思考中,看了以前的備份也是正常的沒有少文件。
2.最后問題在于我恢復父項的時候web.config這個文件里的數據是:<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="index.php" />
<add value="index.asp" />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="Default.aspx" />
<add value="index.aspx" />
<add value="default.php" />
<add value="index.html" />
<add value="index.htm" />
</files>
3.正常的web.config里面的數據應該是:<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="index.php" />
<add value="index.asp" />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="Default.aspx" />
<add value="index.aspx" />
<add value="default.php" />
<add value="index.html" />
<add value="index.htm" />
</files>
</defaultDocument>
<handlers>
<remove name="PHP-7.0-7i24.com" />
<remove name="PHP-5.6-7i24.com" />
<remove name="PHP-5.5-7i24.com" />
<remove name="PHP-5.4-7i24.com" />
<remove name="PHP-5.3-7i24.com" />
<remove name="PHP-5.2-7i24.com" />
<add name="PHP-5.2-7i24.com" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="c:\php\5.2\php-cgi.exe" resourceType="Either" />
</handlers>
<httpErrors errorMode="Detailed" />
</system.webServer>
</configuration>
4.注意檢查500錯誤,其實不是權限問題就是web.config這個文件有問題。
這是一個PHP開發的網站程序。