萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> Windows 2003 asp網頁不能訪問的常見問題

Windows 2003 asp網頁不能訪問的常見問題

   今天去幫朋友設置服務器,操作系統為WIN2003,使用了IIS6.0,不過發現只能訪問HTML的網頁,ASP網頁就訪問不了,出現:您訪問的頁面不存在或無法訪問之類的錯誤。。想了一下,確定不會是動態網頁出問題了,因為是剛下回來的壓縮包;所以就應該是系統配置不對了。

  上網查了一下資料,才知道在默認設置下IIS6.0是不支持ASP的,它支持了.Net架構。所以在使用IIS6.0的時候要注意一些設置:

  1. [開始]--[程序]--[管理工具]--[Internet信息服務管理器],在服務器名下的“web服務擴展”的右窗口,單擊active server pages -> 單擊[允許]。

  2. IIS6的默認設置,是沒有“啟用網頁的父路徑”。所以打開網頁,當單擊跟下級目錄有關的素材時,會彈出:“服務器500錯誤”,無法打開網頁。

  方法:[開始]--[程序]--[管理工具]--[Internet信息服務管理器],右擊[網站] --[屬性]--[主目錄]-[配置]--應用程序選項,勾選“啟用父路徑”。

  3. 右擊具體的網頁 -- 權限,把USERS的權限設為完全,這樣就行了

  4. 解決windows2003最大只能上載200K的限制。先在服務裡關閉iis admin service服務找到windowssystem32inesrv下的metabase.xml打開,找到ASPMaxRequestEntityAllowed 把他修改為需要的值,然後重啟iis admin service服務(企業版的windows2003在第592行,默認為 AspMaxRequestEntityAllowed="204800" 即200K。將其加兩個0,即改為,現在最大就可以上載20M了。AspMaxRequestEntityAllowed="20480000"

  以下是win2003下IIS6服務器設置排錯:

  問題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時系統自動建立的一個內置賬號。IWA

  M賬號建立後被Active Directory、IIS metabase數據庫和COM+應用程序三方共同使用,賬號密碼被三方分別保存,並由操作系統負責這三方保存的IWAM密碼的同步工作。系統對IWAM賬號的密碼同步工作有時會失效,導致IWAM賬號所用密碼不統一。

  解決辦法:

  如果存在AD,選擇開始->程序->管理工具->Active Directory用戶和計算機。為IWAM賬號設置密碼。

  運行c:InetpubAdminScripts>adsutil SET w3svc/WAMUserPass +密碼 同步IIS metabase數據庫密碼

  運行cscript c:inetpubadminscriptssynciwam.vbs -v 同步IWAM賬號在COM+應用程序中的密碼

  問題8:MIME設置問題導致某些類型文件無法下載(以ISO為例)

  症狀舉例:

  HTTP 錯誤 404 - 文件或目錄未找到。

  原因分析:

  IIS6.0取消了對某些MIME類型的支持,例如ISO,致使客戶端下載出錯。

  解決方法:

  在IIS中屬性->HTTP頭->MIME類型->新建。在隨後的對話框中,擴展名填入.ISO,MIME類型是application。

  另外,防火牆阻止,ODBC配置錯誤,Web服務器性能限制,線程限制等因素也是造成IIS服務器無法訪問的可能原因,這裡就不再一一饋述了。

copyright © 萬盛學電腦網 all rights reserved