iT邦幫忙

3

伺服器架站無法訪問的解決方案

iis
Gary 2010-01-10 13:49:1820303 瀏覽

很多朋友在用IIS6架網站的時候遇到不少問題,而這些問題有些在過去的IIS5裏面就遇到過,有些是新出來的,俺忙活了一下午,做了很多次試驗,結合以前的排錯經驗,做出了這個總結,希望能給大家幫上忙:)
問題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帳號不同步

症狀舉例:

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伺服器無法訪問的可能原因,這裏就不再一一饋述了。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言