2013-03-05 51 views
1

我希望能夠在開發階段查看瀏覽器文件背後的代碼。爲此,我將在web.config中禁用.cs文件的默認處理程序HttpForbiddenHandler如何禁用默認處理程序HttpForbiddenHandler以查看.cs文件?

由於我使用IIS 7,我首先放置在<remove>元件在<system.webServer>部分是這樣的:

<system.webServer> 
    <handlers> 
     <remove path="*.cs" verb="*"/> 
     <add verb="*" path="*.cspx" type="HandlersAndModules.CspxHandler, HandlersAndModules" name="CspxHandler"/> 
    </handlers> 
</system.webServer> 

和我的錯誤,當我運行應用程序:

HTTP Error 500.19 - Internal Server Error 
The requested page cannot be accessed because the related configuration data for the page is invalid. 

這是因爲<system.webServer>部分中的元素不能識別屬性verbpath

然後我試圖移動<remove>元素<system.web>部分是這樣的:

<system.web> 
    <httpHandlers> 
     <remove path="*.cs" verb="*"/> 
    </httpHandlers> 
</system.web> 

,我得到的錯誤,當我運行應用程序:

HTTP Error 500.23 - Internal Server Error 
An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode. 

如何禁用默認的處理程序HttpForbiddenHandler那阻止從瀏覽器查看.cs文件?

回答

0

您需要兩兩件事:

第一,得到.cs文件擔任的內容,你需要補充一點:

<system.web> 
    <httpHandlers> 
     <remove path="*.cs" verb="*"/> 
     <add verb="GET" path="*.cs" type="System.Web.StaticFileHandler" /> 
    </httpHandlers> 
</system.web> 

其次,要避免HTTP Error 500.23,加上這是一個解決辦法:

<system.webServer> 
    <validation validateIntegratedModeConfiguration="false" /> 
</system.webServer> 

500.23錯誤表示並非您的所有處理程序和模塊都在system.webServer中指定部分。如果您有能力在那裏指定它們,那麼請執行此操作,而不是解決方法。解決方法只是購買你的時間,直到你能夠遷移你的設置。

相關問題