附:解決與“HTTP 500 - Internal Server Error”(HTTP 500 – 内部伺服器錯誤)錯誤資訊有關的問題
http://support.microsoft.com/?kbid=311766&ln=zh-cn
**************************************
---------------------------------------------------------------------
很多朋友在用IIS6架網站的時候遇到不少問題,而這些問題有些在過去的IIS5裡面就遇到過,有些是新出來的,俺忙活了一下午,做了很多次試驗,結合以前的排錯經驗,做出了這個總結,希望能給大家幫上忙
如果你的伺服器是2003的,它預設隻支援.net,不支援asp是以須進行以下操作:
打開iis6.0裡面的本地計算機->web服務擴充
把active server pages 允許就行了
問題1:未啟用父路徑
症狀舉例:
Server.MapPath() 錯誤 'ASP 0175 : 80004005'
不允許的 Path 字元
/0709/dqyllhsub/news/OpenDatabase.asp,行 4
在 MapPath 的 Path 參數中不允許字元 '..'。
原因分析:
許多Web頁面裡要用到諸如../格式的語句(即回到上一層的頁面,也就是父路徑),而IIS6.0出于安全考慮,這一選項預設是關閉的。
解決方法:
在IIS中 屬性->主目錄->配置->選項中。把”啟用父路徑“前面打上勾。确認重新整理。
問題2:ASP的Web擴充配置不當(同樣适用于ASP.NET、CGI)
症狀舉例:
HTTP 錯誤 404 - 檔案或目錄未找到。
原因分析:
在IIS6.0中新增了web程式擴充這一選項,你可以在其中對ASP、ASP.NET、CGI、IDC等程式進行允許或禁止,預設情況下ASP等程式是禁止的。
解決方法:
在IIS中的Web服務擴充中選中Active Server Pages,點選“允許”。
問題3:身份認證配置不當
症狀舉例:
HTTP 錯誤 401.2 - 未經授權:通路由于伺服器配置被拒絕。
原因分析:IIS 支援以下幾種 Web 身份驗證方法:
匿名身份驗證
IIS 建立 IUSR_計算機名稱 帳戶(其中 計算機名稱 是正在運作 IIS 的伺服器的名稱),用來在匿名使用者請求 Web 内容時對他們進行身份驗證。此帳戶授予使用者本地登入權限。你可以将匿名使用者通路重置為使用任何有效的 Windows 帳戶。
基本身份驗證
使用基本身份驗證可限制對 NTFS 格式 Web 伺服器上的檔案的通路。使用基本身份驗證,使用者必須輸入憑據,而且通路是基于使用者 ID 的。使用者 ID 和密碼都以明文形式在網絡間進行發送。
Windows 內建身份驗證
Windows 內建身份驗證比基本身份驗證安全,而且在使用者具有 Windows 域帳戶的内部網環境中能很好地發揮作用。在內建的 Windows 身份驗證中,浏覽器嘗試使用目前使用者在域登入過程中使用的憑據,如果嘗試失敗,就會提示該使用者輸入使用者名和密碼。如果你使用內建的 Windows 身份驗證,則使用者的密碼将不傳送到伺服器。如果該使用者作為域使用者登入到本地計算機,則他在通路此域中的網絡計算機時不必再次進行身份驗證。
摘要身份驗證
摘要身份驗證克服了基本身份驗證的許多缺點。在使用摘要身份驗證時,密碼不是以明文形式發送的。另外,你可以通過代理伺服器使用摘要身份驗證。摘要身份驗證使用一種挑戰/響應機制(內建 Windows 身份驗證使用的機制),其中的密碼是以加密形式發送的。
.NET Passport 身份驗證
Microsoft .NET Passport 是一項使用者身份驗證服務,它允許單一簽入安全性,可使使用者在通路啟用了 .NET Passport 的 Web 站點和服務時更加安全。啟用了 .NET Passport 的站點會依靠 .NET Passport 中央伺服器來對使用者進行身份驗證。但是,該中心伺服器不會授權或拒絕特定使用者通路各個啟用了 .NET Passport 的站點。
解決方法:
根據需要配置不同的身份認證(一般為匿名身份認證,這是大多數站點使用的認證方法)。認證選項在IIS的屬性->安全性->身份驗證和通路控制下配置。
問題4:IP限制配置不當
症狀舉例:
HTTP 錯誤 403.6 - 禁止通路:用戶端的 IP 位址被拒絕。
原因分析:
IIS提供了IP限制的機制,你可以通過配置來限制某些IP不能通路站點,或者限制僅僅隻有某些IP可以通路站點,而如果用戶端在被你阻止的IP範圍内,或者不在你允許的範圍内,則會出現錯誤提示。
解決方法:
進入IIS的屬性->安全性->IP位址和域名限制。如果要限制某些IP位址的通路,需要選擇授權通路,點添加選擇不允許的IP位址。反之則可以隻允許某些IP位址的通路。
問題5:IUSR賬号被禁用
症狀舉例:
HTTP 錯誤 401.1 - 未經授權:通路由于憑據無效被拒絕。
原因分析:
由于使用者匿名通路使用的賬号是IUSR_機器名,是以如果此賬号被禁用,将造成使用者無法通路。
解決辦法:
控制台->管理工具->計算機管理->本地使用者群組,将IUSR_機器名賬号啟用。
問題6:NTFS權限設定不當
症狀舉例:
HTTP 錯誤 401.3 - 未經授權:通路由于 ACL 對所請求資源的設定被拒絕。
原因分析:
Web用戶端的使用者隸屬于user組,是以,如果該檔案的NTFS權限不足(例如沒有讀權限),則會導緻頁面無法通路。
解決辦法:
進入該檔案夾的安全頁籤,配置user的權限,至少要給讀權限。關于NTFS權限設定這裡不再饋述。
問題7:IWAM賬号不同步
症狀舉例:
問題7:HTTP 500 - 内部伺服器錯誤
原因分析:
IWAM賬号是安裝IIS時系統自動建立的一個内置賬号。IWAM賬号建立後被Active Directory、IIS metabase資料庫和COM+應用程式三方共同使用,賬号密碼被三方分别儲存,并由作業系統負責這三方儲存的IWAM密碼的同步工作。系統對IWAM賬号的密碼同步工作有時會失效,導緻IWAM賬号所用密碼不統一。
解決辦法:
如果存在AD,選擇開始->程式->管理工具->Active Directory使用者和計算機。為IWAM賬号設定密碼。
運作c:/Inetpub/AdminScripts>adsutil SET w3svc/WAMUserPass +密碼 同步IIS metabase資料庫密碼
運作cscript c:/inetpub/adminscripts/synciwam.vbs -v 同步IWAM賬号在COM+應用程式中的密碼
問題8:MIME設定問題導緻某些類型檔案無法下載下傳(以ISO為例)
症狀舉例:
HTTP 錯誤 404 - 檔案或目錄未找到。
原因分析:
IIS6.0取消了對某些MIME類型的支援,例如ISO,緻使用戶端下載下傳出錯。
解決方法:
在IIS中 屬性->HTTP頭->MIME類型->建立。在随後的對話框中,擴充名填入.ISO,MIME類型是application。
另外,防火牆阻止,ODBC配置錯誤,Web伺服器性能限制,線程限制等因素也是造成IIS伺服器無法通路的可能原因,這裡就不再一一饋述了。希望此帖能解決大家的大部分問題:)