在IIS 7.5下調試ASP.NET程序,出現了一個奇怪的錯誤“HTTP 錯誤 500.22 - Internal Server Error 檢測到在集成的托管管道模式下不適用的 ASP.NET 設置。”
下面看我的操作步驟:
1、打開IIS,找到“應用程序池”
2、雙擊“DefaultAppPool”,在“托管管道模式”選擇“經典”,點擊“確定”按鈕。
再次在瀏覽器中運行程序,這回就正常了!
其實在錯誤信息的可嘗試的操作部分已經說的很明確了,問題就是集成模式下的問題,只要改成經典模式就行了。看如下提示:
1、將配置遷移到 system.webServer/modules 節。也可以手動這樣做,或通過在命令行中使用 AppCmd 來這樣做 - 例如,%SystemRoot%\system32\inetsrv\appcmd migrate config "Default Web Site/"。使用 AppCmd 遷移應用程序將使它能夠在集成模式下工作,并能繼續在經典模式下和以前版本的 IIS 上工作。
2、如果您確信可以忽略此錯誤,則可以通過將 system.webServer/validation@validateIntegratedModeConfiguration 設置為 false 來禁用它。
3、也可以將應用程序切換到經典模式應用程序池 - 例如,%SystemRoot%\system32\inetsrv\appcmd set app "Default Web Site/" /applicationPool:"Classic .NET AppPool"。只有在無法遷移應用程序時才這樣做。
(將“Default Web Site”和“Classic .NET AppPool”設置為您的應用程序路徑及應用程序池名稱)