麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網(wǎng)站 > IIS > 正文

IIS7報(bào)500.23錯誤的原因分析及解決方法

2024-08-29 03:16:27
字體:
供稿:網(wǎng)友

 背景:今天公司終端上有一個功能打開異常,報(bào)500錯誤,我用Fiddler找到鏈接,然后在IE里打開,報(bào)500.23錯誤:檢測到在集成的托管管道模式下不適用的ASP.NET設(shè)置。后臺是一個IIS7和tomcat7集成的環(huán)境,此處記錄一下。

HTTP 錯誤 500.23 - Internal Server Error

檢測到在集成的托管管道模式下不適用的 ASP.NET 設(shè)置。

iis7,500錯誤

為什么會出現(xiàn)以上錯誤?

在IIS7的應(yīng)用程序池有兩種模式,一種是“集成模式”,一種是“經(jīng)典模式”。

經(jīng)典模式則是我們以前習(xí)慣的IIS 6 的方式。

如果使用集成模式,那么對自定義的httpModules 和 httpHandlers 就要修改配置文件,需要將他們轉(zhuǎn)移到<modules>和<hanlders>節(jié)里去。

兩種解決方法:

第一種方法、配置應(yīng)用程序池

在IIS7上配置應(yīng)用程序池,并且將程序池的模式改為“經(jīng)典”,之后一切正常。如圖:

iis7,500錯誤

用了IIS7.x,但實(shí)際只發(fā)揮了6的功能,另外,在一些ASP.NET MVC程序中的效果也不好,所以,我們嘗試以下解決方法:

第二種方法、修改web.config配置文件:

注: web.config路徑C:/inetpub/wwwroot/web.config

例如原先設(shè)置(你的環(huán)境中可能沒有httpModules,httpHandlers節(jié)點(diǎn))

 

復(fù)制代碼 代碼如下:

<system.web>
............
<httpModules>
<add name="MyModule"type="MyApp.MyModule" />
</httpModules>
<httpHandlers>
<add path="*.myh"verb="GET"type="MyApp.MyHandler" />
</httpHandlers>
</system.web>

 

在IIS7應(yīng)用程序池為“集成模式”時,改為:

 

復(fù)制代碼 代碼如下:

<system.web>
...........
</system.web>
<system.webServer>
<modules>
<add name="MyModule"type="MyApp.MyModule" />
</modules>
<handlers>
<add name="MyHandler"path="*.myh"verb="GET"type="MyApp.MyHandler"preCondition="integratedMode" />
</handlers>
</system.webServer>

 

(如果你的web.config沒有httpModules,httpHandlers節(jié)點(diǎn),則直接在節(jié)點(diǎn)system.webServer中添加:

 

復(fù)制代碼 代碼如下:

<validation validateIntegratedModeConfiguration="false" />

 

禁止驗(yàn)證集成模式,來避免錯誤。

IIS Log的位置
IIS 6.0的Log日志存儲在:
c:/windows/system32/logfiles/

IIS 7 Log存儲在:
%SystemDrive%/inetpub/logs/LogFiles

經(jīng)過我的測試, IIS日志是即時寫入的, 不需要IIS reset.

IIS 6, 7的日志寫入按不同站點(diǎn)寫入不同的文件夾, 位置文件夾的格式都是"w3svc{siteId}".

IIS6里, 查看站點(diǎn)ID的方式是通過IIS log的文件夾的名字來確定Site ID.

IIS7中, 在IIS管理器中的advanced settings中, General里的ID就是Site ID, 然后你需要通過這個ID來定位LogFiles文件夾中哪一個文件夾屬于你要查看的站點(diǎn).

Intergrated和Classic的區(qū)別

IIS7的Application Pools有兩種mode,一種是Integrated,一種是classic。如果使用Integrated模式,那么對自定義的httpModules和httpHandlers就要修改配置文件了,需要將他們轉(zhuǎn)移到<modules>和<hanlders>節(jié)里去。

IIS7的兩種模式和IIS6有什么區(qū)別?

IIS7.0 Integrated mode:asp.net 的modules和handlers從<system.webServer>下的<modules> 和<handlers>里讀取,以前的<system.web>下的<httpModules> 和<httpHandlers>配置節(jié)會被忽略,如果設(shè)置禁止驗(yàn)證(disabledvalidation),是不會產(chǎn)生錯誤的。

IIS7.0 Classic mode: 與 以上情況是相反的,<modules>和<handlers>會被忽略。

Classic vs Integrated
Classic mode (theonly mode in IIS6 and below) is a mode where IIS only works with ISAPIextensions and ISAPI filters directly. In fact, in this mode, Asp.net is justan ISAPI extension (aspnet_isapi.dll) and an ISAPI filter(aspnet_filter.dll).IIS just treats Asp.net as an external plugin implemented in ISAPI and workswith it like a black box (and only when it's needs to give out the request toASP.NET). In this mode, Asp.net is not much different from PHP or other technologies for IIS.

經(jīng)典模式是IIS6.0以及以下版本的唯一工作模式(只工作在ISAPI EXTENSION,ISAPI FILTERS下)。在此種模式下asp.net只是一個分別實(shí)現(xiàn)了ISAPIEXTENSION和ISAPI FILTER的插件(aspnet_isapi.dll,aspnet_filter.dll),IIs的工作只是將特定的請求轉(zhuǎn)發(fā)給Asp.net,與 PHP等等寄宿在IIS中的插件別無二致。

Integrated mode,on the other hand, is a new mode in IIS7 where IIS pipeline is tightlyintegrated (i.e. is just the same) as Asp.net request pipeline. ASP.NET cansee every request it wants to and manipulate things along the way. ASP.NET isno longer treated as an external plugin. It's completely blended and integratedin IIS. In this mode, Asp.net HttpModules basically have nearly as much poweras an ISAPI filter would have had and Asp.net HttpHandlers can have nearlyequivalent capability as an ISAPI extension could have. In this mode, Asp.netis basically a part of IIS.

然而在集成模式里,IIS的管道與Asp.net的請求管道是緊密集成 的,Asp.net可以完全控制,訪問整個請求管道。Asp.net不在作為一個外部插件,而是完全集成在IIS中。在此模式下,Asp.net HttpModules與ISAPI Filter擁有等同的控制權(quán),Asp.net HttpHandlers與ISAPI Extension擁有等同控制權(quán),換而言之Asp.net已經(jīng)是IIS的一部分了。

如 果要兼顧IIS6及IIS7,可在web.config中同時保留httpHandlers(for IIS6)及handlers(for IIS7)里的相同定義,但記得要加上<validation validateIntegratedModeConfiguration="false"/>,不然IIS7會因?yàn)槎x重覆出現(xiàn)而發(fā)生錯誤。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 精品国产视频一区二区三区 | 欧美视频在线一区二区三区 | 欧美一级毛片特黄黄 | 91亚洲精品一区二区福利 | 色综合一区二区 | 狠狠干最新网址 | 国产精品美女久久久免费 | 国产欧美日韩视频在线观看 | 欧美日性 | 日本最新免费二区三区 | 色女人在线 | 成人午夜免费看 | 久久最新网址 | 国产精品久久久久久久久久 | 在线成人看片 | 99视频观看| 欧美日韩在线视频一区二区 | 免费99热在线观看 | 国产成人羞羞视频在线 | 成人国产精品色哟哟 | 免费毛片在线 | 美国黄色毛片女人性生活片 | 久久亚洲网 | 中国免费一级毛片 | 国产精品久久久久久久久久iiiii | 一级毛片播放 | 青草久久av | 国产精品毛片va一区二区三区 | 久啪视频 | 国产精品热 | 国产一区视频在线观看免费 | 久久久久久久久久久久久久久久久久 | 性看小视频 | 国产在线精品一区二区三区不卡 | 久久久久久久久久久久久国产精品 | 叶子楣成人爽a毛片免费啪啪 | 亚洲性生活免费视频 | 一区二区三区精品国产 | 欧美 日韩 亚洲 中文 | 日韩中文一区 | 午夜色视频在线观看 |