IIS服務(wù)器出錯的原因是復雜的。如服務(wù)啟動(dòng)失敗、IIS進(jìn)程中斷或者站點(diǎn)不能啟動(dòng)這些錯誤都會(huì )在系統日志中記錄一個(gè)錯誤事件。不論IIS出現何種錯誤,在確定排錯方案之前,都應先使用事件查看器查閱系統日志所記錄的相關(guān)事件。某些錯誤顯然是由服務(wù)器硬件的損壞而造成的,而另一些由于軟件原因造成的錯誤往往不易察覺(jué)。本節就一般性的IIS排錯提供指導性的介紹。
重新啟動(dòng)IIS
按照微軟產(chǎn)品的一般性排錯方法和故障解決方案,大多數軟件問(wèn)題可以通過(guò)重新啟動(dòng)到方法得以解決。作為IIS5.0的新功能之一,我們可以在不重新啟動(dòng)計算機的情況下重啟IIS服務(wù),甚至相當嚴重的問(wèn)題都可以采用這種方法解決。重新啟動(dòng)IIS服務(wù)可以強迫系統重置IIS進(jìn)程的內存空間,故由于內存錯誤引起的問(wèn)題可以得到解決。重啟IIS的方法主要用于下列情況:網(wǎng)站應用程序癱瘓、且不能有效加以控制;網(wǎng)站應用程序工作不正?;蛘卟环€定。[/TD] [/TR][/TABLE]重新啟動(dòng)IIS服務(wù)的過(guò)程中,全部當前連接都不能保留,且重啟期間服務(wù)器上的全部站點(diǎn)都不能工作。如果重啟IIS服務(wù)不能解決問(wèn)題,則重啟服務(wù)器亦不會(huì )有效。
當站點(diǎn)應用程序不能正常工作時(shí),按照下述步驟重新啟動(dòng)服務(wù)器的IIS服務(wù):
1.在IIS管理控制樹(shù)中展開(kāi)IIS節點(diǎn),選擇需要重新啟動(dòng)IIS服務(wù)的計算機。
2.單擊【操作】菜單,選擇【重新啟動(dòng)IIS】。
3.在【停止/啟動(dòng)/重新啟動(dòng)】對話(huà)框中的【您向要IIS做什么】下拉列表中選擇【重新啟動(dòng)服務(wù)器的IIS】 ,單擊【確定】。
4.正在關(guān)閉】對話(huà)框顯示重新啟動(dòng)IIS的進(jìn)度,如果對話(huà)框長(cháng)時(shí)間沒(méi)有反應,單擊【現在結束】并重新進(jìn)行上述操作。
注意:不能使用基于HTML的IIS管理器(遠程管理模式)進(jìn)行上述重啟操作。
對于單個(gè)站點(diǎn)的穩定性問(wèn)題,不必重新啟動(dòng)整個(gè)IIS進(jìn)程,只要重啟站點(diǎn)即可。IIS排錯
備份/還原IIS
如果世界上存在一個(gè)萬(wàn)無(wú)一失的服務(wù)器安全規劃方案,那就是備份。曾經(jīng)有人指出:一個(gè)優(yōu)秀的系統管理員所做的最重要的三項工作就是:備份、備份、備份。
IIS的實(shí)現機制包括一個(gè)類(lèi)似注冊表的元數據庫:MetaBase,有關(guān)IIS本身和站點(diǎn)的配置屬性全部保存在Windows 2000和元數據庫MetaBase中。因此,只要將相關(guān)的注冊表和元數據庫進(jìn)行備份,即可保存站點(diǎn)相關(guān)的全部配置。即使在刪除站點(diǎn)甚至重新安裝IIS之后,仍然能夠利用備份恢復到原來(lái)的狀態(tài)。
備份IIS的步驟如下:
1.在IIS管理器中展開(kāi)IIS節點(diǎn),選擇向要備份的計算機。
2.單擊【操作】菜單,選擇【備份/還原配置】。
3.在【備份/還原配置】對話(huà)框中的【備份】列表中列出全部備份文件以及備份時(shí)間。單擊【創(chuàng )建備份】按鈕。
4.在【備份配置】對話(huà)框中指定新建備份的名稱(chēng),單擊【確定】。
5.單擊【關(guān)閉】完成備份。
默認情況下,備份文件將保存在Winntsystem32inetsrvMetaBack目錄中。
恢復備份的方法與此類(lèi)似,在【備份/還原配置】對話(huà)框中的【備份】列表中選擇一個(gè)備份文件,單擊【還原】。然后再如左圖所示的提示對話(huà)框中單擊【確定】,一段時(shí)間之后,IIS服務(wù)器恢復到進(jìn)行備份時(shí)所處的狀態(tài)。
如果服務(wù)器重裝IIS之后需要恢復備份,則在上述恢復操作的基礎上,還應進(jìn)行額外的操作,步驟如下:
1.在命令提示符下,鍵入cscript.exeX:InetPubAmdinScriptsAdsutil.vbs enumw3svc,此處"X"是安裝IIS的驅動(dòng)器號。從列出的設置中,查找WamUserName和相關(guān)的WAMUserPass的值。
2.在控制面板中雙擊【管理工具】,然后雙擊【計算機管理】。
3.選擇【本地用戶(hù)管理器】,然后單擊【用戶(hù)】。雙擊【IWAM_computername】用戶(hù)帳戶(hù)。鍵入從以前步驟找到的WAMUserPass值,并單擊【確定】。
4.在【配置備份名】對話(huà)框中,選擇創(chuàng )建的備份文件,然后單擊【還原】。此時(shí)配置將得到完全還原。
IIS排錯
TCP/IP排錯
TCP/IP協(xié)議問(wèn)題往往是導致IIS不能正常工作的原因。當IIS出現錯誤但是可以判斷IIS服務(wù)本身沒(méi)有問(wèn)題時(shí),就要考慮是否網(wǎng)絡(luò )連接出現問(wèn)題,簡(jiǎn)單排除網(wǎng)絡(luò )硬件損壞所造成的問(wèn)題之后,我們的注意力就應集中在網(wǎng)絡(luò )協(xié)議,主要是TCP/IP協(xié)議上。
Windows 2000提供了一系列TCP/IP排錯工具,這些主要基于命令提示行的工具提供了診斷網(wǎng)絡(luò )問(wèn)題的強大手段。
使用ipconfig工具檢查T(mén)CP/IP配置
ipconfig是一個(gè)查閱和管理客戶(hù)機TCP/IP配置狀態(tài)的命令提示行工具。在命令提示行中鍵入:ipconfig并回車(chē),得到如右圖所示的計算機基本TCP/IP配置屬性,包括IP地址、子網(wǎng)掩碼和缺省網(wǎng)關(guān)。
在命令提示行中鍵入:ipconfig /all并回車(chē),得到詳細模式的TCP/IP配置狀態(tài),除了基本信息之外,還包括主機名、DNS設置、WINS設置、DHCP設置以及物理地址、節點(diǎn)類(lèi)型等TCP/IP信息。
如果計算機啟用DHCP并使用DHCP服務(wù)器獲得配置,可以使用ipconfig /renew命令開(kāi)始刷新租約。也可以使用帶/release選項的ipconfig命令立即釋放主機的當前DHCP配置。
對于Windows 95和Windows 98客戶(hù)機,應使用 winipcfg命令而不是ipconfig命令。
使用ping命令測試連接
Ping命令有助于驗證IP級的連通性,發(fā)現和解決問(wèn)題時(shí),可以使用Ping向目標主機名或IP地址發(fā)送ICMP回應請求。在需要驗證主機能否連接到TCP/IP網(wǎng)絡(luò )和網(wǎng)絡(luò )資源時(shí)使用Ping。
Ping命令實(shí)際上是向目標主機發(fā)送若干(缺省為4個(gè))數據包,如果本地計算機與目標主機之間能夠連通,目標主機將回復一條響應信息,如右上圖所示,響應信息包括響應時(shí)間和TTL值。成功的Ping同一臺主機說(shuō)明IP數據能夠在本地與目標主機之間傳送。
如果收到超時(shí)信息,如右下圖所示,則說(shuō)明本地主機與目標主機之間的TCP/IP連接不能建立,可能的原因包括網(wǎng)絡(luò )故障,協(xié)議錯誤以及TCP/IP配置錯誤等在確認網(wǎng)絡(luò )連通性的時(shí)候,應按照以下順序進(jìn)行Ping測試:
1.Ping本地循環(huán)地址127.0.0.1,確定本地TCP/IP配置是否正確。
在命令提示行鍵入Ping 127.0.0.1。
2.Ping本機地址,檢驗本地IP地址設置是否正確。
3.Ping缺省網(wǎng)關(guān)地址,檢驗能否與本地子網(wǎng)之外的主機進(jìn)行通信。
4.Ping遠程子網(wǎng)上的主機,檢驗能否通過(guò)路由器進(jìn)行遠程通信。
如果以上Ping命令均能夠得到響應,說(shuō)明TCP/IP配置能夠支持網(wǎng)絡(luò )通信。否則,針對相應的網(wǎng)絡(luò )組件進(jìn)行設置檢查。
使用netstat工具顯示連接統計
可以使用netstat命令顯示協(xié)議統計信息和當前的TCP/IP連接。
netstat -a命令將顯示所有連接,而netstat -r顯示路由表和活動(dòng)連接。netstat -e命令將顯示 Ethernet 統計信息,而netstat -s顯示每個(gè)協(xié)議的統計信息。
如果使用 netstat -n,則不能將地址和端口號轉換成名稱(chēng)。
IIS錯誤代碼大全
400 無(wú)法解析此請求。
401.1 未經(jīng)授權:訪(fǎng)問(wèn)由于憑據無(wú)效被拒絕。
401.2 未經(jīng)授權: 訪(fǎng)問(wèn)由于服務(wù)器配置傾向使用替代身份驗證方法而被拒絕。
401.3 未經(jīng)授權:訪(fǎng)問(wèn)由于 ACL 對所請求資源的設置被拒絕。
401.4 未經(jīng)授權:Web 服務(wù)器上安裝的篩選器授權失敗。
401.5 未經(jīng)授權:ISAPI/CGI 應用程序授權失敗。
401.7 未經(jīng)授權:由于 Web 服務(wù)器上的 URL 授權策略而拒絕訪(fǎng)問(wèn)。
403 禁止訪(fǎng)問(wèn):訪(fǎng)問(wèn)被拒絕。
403.1 禁止訪(fǎng)問(wèn):執行訪(fǎng)問(wèn)被拒絕。
403.2 禁止訪(fǎng)問(wèn):讀取訪(fǎng)問(wèn)被拒絕。
403.3 禁止訪(fǎng)問(wèn):寫(xiě)入訪(fǎng)問(wèn)被拒絕。
403.4 禁止訪(fǎng)問(wèn):需要使用 SSL 查看該資源。
403.5 禁止訪(fǎng)問(wèn):需要使用 SSL 128 查看該資源。
403.6 禁止訪(fǎng)問(wèn):客戶(hù)端的 IP 地址被拒絕。
403.7 禁止訪(fǎng)問(wèn):需要 SSL 客戶(hù)端證書(shū)。
403.8 禁止訪(fǎng)問(wèn):客戶(hù)端的 DNS 名稱(chēng)被拒絕。
403.9 禁止訪(fǎng)問(wèn):太多客戶(hù)端試圖連接到 Web 服務(wù)器。
403.10 禁止訪(fǎng)問(wèn):Web 服務(wù)器配置為拒絕執行訪(fǎng)問(wèn)。
403.11 禁止訪(fǎng)問(wèn):密碼已更改。
403.12 禁止訪(fǎng)問(wèn):服務(wù)器證書(shū)映射器拒絕了客戶(hù)端證書(shū)訪(fǎng)問(wèn)。
403.13 禁止訪(fǎng)問(wèn):客戶(hù)端證書(shū)已在 Web 服務(wù)器上吊銷(xiāo)。
403.14 禁止訪(fǎng)問(wèn):在 Web 服務(wù)器上已拒絕目錄列表。
403.15 禁止訪(fǎng)問(wèn):Web 服務(wù)器已超過(guò)客戶(hù)端訪(fǎng)問(wèn)許可證限制。
403.16 禁止訪(fǎng)問(wèn):客戶(hù)端證書(shū)格式錯誤或未被 Web 服務(wù)器信任。
403.17 禁止訪(fǎng)問(wèn):客戶(hù)端證書(shū)已經(jīng)到期或者尚未生效。
403.18 禁止訪(fǎng)問(wèn):無(wú)法在當前應用程序池中執行請求的 URL。
403.19 禁止訪(fǎng)問(wèn):無(wú)法在該應用程序池中為客戶(hù)端執行 CGI。
403.20 禁止訪(fǎng)問(wèn):Passport 登錄失敗。
404 找不到文件或目錄。
404.1 文件或目錄未找到:網(wǎng)站無(wú)法在所請求的端口訪(fǎng)問(wèn)。
注意 404.1 錯誤只會(huì )出現在具有多個(gè) IP 地址的計算機上。如果在特定 IP 地址/端口組合上收到客戶(hù)端請求,而且沒(méi)有將 IP 地址配置為在該特定的端口上偵聽(tīng),則 IIS 返回 404.1 HTTP 錯誤。例如,如果一臺計算機有兩個(gè) IP 地址,而只將其中一個(gè) IP 地址配置為在端口 80 上偵聽(tīng),則另一個(gè) IP 地址從端口 80 收到的任何請求都將導致 IIS 返回 404.1 錯誤。只應在此服務(wù)級別設置該錯誤,因為只有當服務(wù)器上使用多個(gè) IP 地址時(shí)才會(huì )將它返回給客戶(hù)端。