症狀:Server.MapPath() 錯誤 'ASP 0175 : 80004005' - 不允許的 Path 字符 '..'
原因:IIS 6.0 預設關閉父路徑以提升安全性。
解決:網站內容 → 主目錄 → 配置 → 選項 → 勾選「啟用父路徑」。
症狀:HTTP 404 - 找不到檔案/目錄。
原因:IIS 6.0 新增「Web 服務擴充」,預設禁止所有擴充。
解決:IIS 管理員 → Web 服務擴充 → 選中「Active Server Pages」/「ASP.NET」/「CGI」 → 點擊「允許」。
症狀:HTTP 401.2 - 未授權:因伺服器設定被拒絕。
驗證方式對照:
| 方式 | 特點 | 適用場景 |
|---|---|---|
| 匿名驗證 | 使用 IUSR_機器名 帳號,本地登入權限 | 公開網站 (預設) |
| 基本驗證 | 明文傳輸帳號密碼,需 NTFS 權限 | 內部受限資源 |
| 整合式 Windows 驗證 | 不傳送密碼,KerberOS/NTLM,單一登入 | 內部網域環境 |
| 摘要式驗證 | 挑戰/回應,密碼加密傳輸,支援 Proxy | 跨網域/Proxy 環境 |
| .NET Passport | 中央認證服務 | 聯盟身分識別 |
解決:網站內容 → 目錄安全性 → 身分驗證與存取控制 → 依需求勾選 (多數選匿名)。
症狀:HTTP 403.6 - 禁止存取:用戶端 IP 被拒絕。
解決:網站內容 → 目錄安全性 → IP 位址與網域名稱限制 → 選「授與存取」並新增允許 IP,或選「拒絕存取」新增封鎖 IP。
症狀:HTTP 401.1 - 未授權:憑證無效。
解決:控制台 → 管理工具 → 電腦管理 → 本地使用者和群組 → 啟用 IUSR_機器名。
症狀:HTTP 401.3 - 未授權:ACL 設定拒絕存取。
解決:資料夾內容 → 安全性 → 給 Users 或站點專屬帳號至少「讀取/執行」權限。
症狀:HTTP 500 - 內部伺服器錯誤。
原因:IWAM 密碼分散儲存於 Active Directory、IIS Metabase、COM+,同步偶爾失效。
解決:
c:\Inetpub\AdminScripts\adsutil SET w3svc/WAMUserPass "新密碼" 同步 Metabase。cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步 COM+。症狀:HTTP 404。
原因:IIS 6.0 移除部分預設 MIME 對應。
解決:網站內容 → HTTP 標頭 → MIME 類型 → 新增:副檔名 .iso,MIME 類型 application/octet-stream。
掌握上述 8 大類問題涵蓋 IIS 6.0 架站 90% 以上常見故障。建議建立標準作業程序 (SOP) 並定期演練,縮短平均修復時間 (MTTR)。