技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運營

贊助商

分類目錄

贊助商

最新文章

搜索

三種方法解決:檢測到在集成的托管管道模式下不適用的 ASP.NET 設(shè)置

作者:admin    時間:2024-4-9 2:10:39    瀏覽:

幾天前配置一個IIS環(huán)境的網(wǎng)站時,出現(xiàn)500錯誤。根據(jù)錯誤提示,很快把問題解決了,現(xiàn)記錄一下,希望能幫到遇到同樣問題的網(wǎng)友。

問題描述

 HTTP 錯誤 500.24 檢測到在集成的托管管道模式下不適用的 ASP.NET 設(shè)置
(點擊圖片放大)

應(yīng)用程序“DEFAULT WEB SITE”中的服務(wù)器錯誤Internet Information Services 7.5
錯誤摘要
HTTP 錯誤 500.24 - Internal Server Error
檢測到在集成的托管管道模式下不適用的 ASP.NET 設(shè)置。
詳細(xì)錯誤信息
模塊 ConfigurationValidationModule
通知 BeginRequest
處理程序 StaticFile
錯誤代碼 0x80070032
請求的 URL ----------
物理路徑 ---------
登錄方法 尚未確定
登錄用戶 尚未確定
最可能的原因:

  • system.web/identity@impersonate 設(shè)置為 true。

可嘗試的操作:

  • 如果應(yīng)用程序支持它,則禁用客戶端模擬。
  • 如果你確信可以忽略此錯誤,則可以通過將 system.webServer/validation@validateIntegratedModeConfiguration 設(shè)置為 false 來禁用它。
  • 使用經(jīng)典 .NET 模式將此應(yīng)用程序移到應(yīng)用程序池 - 例如,%SystemRoot%\system32\inetsrv\appcmd set app "Default Web Site/" /applicationPool:"Classic .NET AppPool"

(可以將“Classic .NET AppPool”設(shè)置為在經(jīng)典托管管道模式下運行的其他應(yīng)用程序池的名稱) 鏈接和更多信息如果你不清楚或無法使用前兩個選項,則首選的做法是將此應(yīng)用程序切換到經(jīng)典模式。

解決方法

方法一

根據(jù)錯誤描述,“最可能的原因”是:system.web/identity@impersonate 設(shè)置為 true。那我就在網(wǎng)站配置文件web.config里把此設(shè)置的true改為false。結(jié)果,問題就解決了。

方法二

我試試在網(wǎng)站配置文件web.config里把方法一的設(shè)置語句刪除,結(jié)果,問題也能解決??梢姡?strong>system.web/identity@impersonate 的默認(rèn)值為 false

方法三

如果不更改web.config配置文件,我們也可以把應(yīng)用程序池的“托管管道模式”的“集成”改為“經(jīng)典”。如下圖:

 把托管管道模式由“集成”改為“經(jīng)典”。

總結(jié)

上面就是此文所述問題的三種解決方法了。 

知識擴(kuò)展:應(yīng)用程序池的集成模式和經(jīng)典模式

在管道中,應(yīng)用程序池有兩種運行模式:集成模式和經(jīng)典模式。

應(yīng)用程序池模式會影響服務(wù)器處理托管代碼請求的方式。

如果托管應(yīng)用程序在采用集成模式的應(yīng)用程序池中運行,服務(wù)器將使用 IIS 和 ASP.NET 的集成請求處理管道來處理請求。

如果托管應(yīng)用程序在采用經(jīng)典模式的應(yīng)用程序池中運行,服務(wù)器會繼續(xù)通過 Aspnet_isapi.dll 路由托管代碼請求,其處理請求的方式就像應(yīng)用程序在 IIS 6.0 中運行一樣。

經(jīng)典模式

指的是與IIS 6或者之前版本保持兼容的一種模式,一個典型問題就是,在處理ASP.NET這種動態(tài)網(wǎng)站的時候,它是通過一個所謂的ISAPI程序,作為插件的方式來工作的。針對不同的動態(tài)應(yīng)用程序(例如ASP,PHP等),會需要不同的ISAPI。

集成模式

在IIS7之前,如IIS6或IIS5,請求處理管道分為兩個:IIS請求處理管道和ASP.NET管道,若客戶端請求靜態(tài)資源則只有IIS管道進(jìn)行處理,而ASP.NET管道不會處理該請求。從IIS7開始兩個管道合二為一,稱為集成管道。這種全新的模式,允許我們將ASP.NET更好地與IIS集成,甚至允許我們在ASP.NET中編寫一些功能(例如Module)來改變IIS的行為(擴(kuò)展)。集成的好處是,不再通過ISAPI的方式,提高了速度和穩(wěn)定性。至于擴(kuò)展,則可以使得我們對于IIS以及其他類型的請求有更多的控制。

標(biāo)簽: IIS7.5  IIS8.5  asp.net  
x
  • 站長推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */