Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

IIS 無法執行 ASP 程式?五步系統化排查法

編輯:關於伺服器

前置檢查:靜態頁面是否正常?

先嘗試存取 .htm/.html 靜態頁。若無法顯示,問題在 IIS 核心服務或網站繫結,非 ASP 專屬問題。

核心設定確認

  • 網站「主目錄」→「執行權限」=純腳本
  • 「配置」→「對應」含 .asp、.asa、.cdx 對應 asp.dll
  • 應用程式保護層級:預設「中 (集區)」

分級排查流程

Step 1:排除 Global.asa 干擾

  1. 將網站根目錄 Global.asa 改名 Global.old
  2. 重啟網站,建立測試檔 test.asp:<% Response.Write "ASP OK" %>
  3. 若正常顯示 → 問題在 Global.asa 語法或物件實例化

Step 2:降低應用程式保護至「低 (IIS 進程內)」

  1. 網站內容 → 主目錄 → 應用程式保護 → 低
  2. 重啟 IIS Admin Service (net stop iisadmin /y && net start w3svc)
  3. 若恢復正常 → IWAM 帳戶權限/密碼不同步 為主因

Step 3:檢查元件服務 (COM+)

  • 「管理工具」→「元件服務」→「電腦」→「我的電腦」→「COM+ 應用程式」
  • 確認存在 IIS In-Process Applications、IIS Out-of-Process Pooled Applications、IIS Utilities 三個套件
  • 若無法開啟元件服務 (CPU 100%),控制台 → 新增/移除程式 → Windows 元件 → 重新安裝「應用程式伺服器」→ 重開機

Step 4:修復 IWAM 帳戶同步

  1. 應用程式保護改回「中/高」
  2. 將 IWAM_<MachineName> 加入 Administrators 群組測試 (僅限臨時診斷)
  3. 若正常 → 權限問題。執行同步工具:
    cscript %windir%\system32\inetsrv\adminscripts\synciwam.vbs

Step 5:重建 IIS COM+ 套件 (終極修復)

1. 元件服務中刪除三個 IIS 套件
2. CMD 執行:%windir%\system32\inetsrv\rundll32 wamreg.dll, CreateIISPackage
3. 關閉/重開元件服務 → 確認三個套件重現
4. IISRESET 重啟 IIS
5. 再次測試 ASP 頁面

延伸閱讀

IWAM 權限深度解析、ASP 0115/0131 錯誡碼對照表、ASP.NET 與 ASP 共存應用程式池隔離策略。

Copyright © Windows教程網 All Rights Reserved