五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > IIS Web.Config中customErrors的使用方法(mode=On|Off|RemoteOnly)

IIS Web.Config中customErrors的使用方法(mode=On|Off|RemoteOnly)

文章來源:365jz.com     點擊數(shù):9432    更新時間:2017-12-10 15:21   參與評論

在Web.Config配置文件中,customErrors元素提供有關(guān)ASP.NET 應(yīng)用程序自定義錯誤消息的信息。

先看一下配置結(jié)構(gòu)的示例:

<configuration>
<system.web>
<customErrors>

<customErrors defaultRedirect="url" mode="On|Off|RemoteOnly">
<error statusCode="statuscode" redirect="url"/>
</customErrors>
必需的屬性
屬性 選項 描述
Mode 指定啟用、禁用或僅對遠程客戶端顯示自定義錯誤。
On 指定啟用自定義錯誤。如果沒有指定 defaultRedirect,用戶將看到一般性錯誤。
Off 指定禁用自定義錯誤。這允許顯示詳細的錯誤。
RemoteOnly 指定僅向遠程客戶端端顯示自定義錯誤,并向本地主機顯示 ASP.NET 錯誤。這是默認值。

可選的屬性
屬性 描述
defaultRedirect 指定發(fā)生錯誤時瀏覽器指向的默認 URL。如果沒有指定 defaultRedirect,則會顯示一般性錯誤。URL 既可以是絕對的(例如 http://www.***.com/ErrorPage.htm),也可以是相對的。相對 URL(如 /ErrorPage.htm)是相對于指定 defaultRedirect 的 Web.config 文件而言的,而不是針對產(chǎn)生錯誤的網(wǎng)頁。以波形符 (~) 開頭的 URL(如 ~/ErrorPage.htm)表示所指定的 URL 是相對于應(yīng)用程序根路徑而言的。

子標記
子標記 描述
<error> 錯誤子標記可以出現(xiàn)多次。每出現(xiàn)一次便定義了一個自定義錯誤條件。

注釋
<customErrors> 元素不適用于在 XML Web 服務(wù)中出現(xiàn)的錯誤。

示例
下例指定了 ASP.NET 應(yīng)用程序的錯誤處理頁。

<configuration>
<system.web>
<customErrors defaultRedirect="GenericError.htm"
mode="RemoteOnly">
<error statusCode="500"
redirect="InternalError.htm"/>
</customErrors>
</system.web>
</configuration>

 

引用 權(quán)限問題 <customErrors> 標記的“mode”屬性設(shè)置為“Off”。

權(quán)限問題標記的“mode”屬性設(shè)置為“Off”。
說明: 服務(wù)器上出現(xiàn)應(yīng)用程序錯誤。此應(yīng)用程序的當前自定義錯誤設(shè)置禁止查看應(yīng)用程序錯誤的詳細信息。

詳細信息: 若要使他人能夠從本地服務(wù)器計算機上查看此特定錯誤信息的詳細信息,請在位于當前 Web 應(yīng)用程序根目錄下的“web.config”配置文件中創(chuàng)建一個 <customErrors> 標記。然后應(yīng)將此 <customErrors> 標記的“mode”屬性設(shè)置為“RemoteOnly”。若要使他人能夠在遠程計算機上查看詳細信息,請將“mode”設(shè)置為“Off”。


<!-- Web.Config 配置文件 -->

<configuration>
<system.web>
       <customErrors mode="RemoteOnly"/>
</system.web>
</configuration>


注釋: 通過修改應(yīng)用程序的 <customErrors> 配置標記的“defaultRedirect”屬性,使之指向自定義錯誤頁的 URL,可以用自定義錯誤頁替換所看到的當前錯誤頁。


<!-- Web.Config 配置文件 -->

<configuration>
<system.web>
       <customErrors mode="On" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>


今天發(fā)現(xiàn)的問題是temp文件夾沒有權(quán)限,network service權(quán)限加入解決問題

(用戶沒有訪問該文件夾的權(quán)限,給該用戶添加訪問該文件夾的權(quán)限即可)

或者是下面的情況
原因分析:服務(wù)器設(shè)置權(quán)限問題

解決方案:在iis中找到asp.net網(wǎng)站 右鍵--權(quán)限 添加network service 用戶到該目錄就可以了

或者還有另外一個解決方案:

<customErrors> 標記的 mode 屬性設(shè)置為 Off 。

 

把iis中設(shè)置asp.net版本為2.0
 

在IIS7.5中添加配置404頁面時遇到了一些問題,記錄如下:

一開始在<customError>下的<error>節(jié)點配置404不起作用,由于程序運行在IIS7.5集成模式下,經(jīng)過MSDN和GOOGLE,

發(fā)現(xiàn)需要在<system.webServer>節(jié)點中配置,

我們知道<system.web>節(jié)點是iis7.0之前版本的主要配置節(jié)點,由于在II7.0以后IIS管

道處理與ASP.NET管道處理進行了集成,這樣提高了ASP.NET的處理性能,具體這方面的資料請GOOGLE,問題隨之而來,新增加的

<system.webServer>節(jié)點中需要進行哪些修改以程序在IIS7的集成模式下能完全生效呢,主要包含以下幾個方面:

(1) <modules> -----相當于<system.web>中的<httpModules>

(2) <handlers> -----相當于<system.web>中的<httpHandlers>

(3) <customError>下的<error>----相當于<system.web>中的<httpErrors>

以上三點中,如果你的程序中有自定義的httpModules或者httpHandlers的話,那么第一點和第二點非常重要,具體資料請MSDN

明白了這些,配置也就不難了,如下:

<httpErrors errorMode="DetailedLocalOnly">
<remove statusCode="404"/>
<error statusCode="404" path="/404.htm" responseMode="ExecuteURL"/>
</httpErrors>

補充說明:

 errorMode有三個值,分別為Custom、DetailedLocalOnly、Detailed,

意思為對用戶與服務(wù)器端始終顯示自定義頁面、只能服務(wù)器端顯示詳細出錯信息、對用戶與服務(wù)器端始終顯示詳細出錯信息。

responseMode有File、ExecuteUrl、Redirect三個層,

分別表示使用服務(wù)器端靜態(tài)文件、可執(zhí)行的URL、URL轉(zhuǎn)向。

要注意:<httpErrors>與<customErrors>是不同的,前者主要用于處理http相關(guān)的錯誤信息,而后者主要是處理應(yīng)用程序級的錯誤頁轉(zhuǎn)向

附<customErrors>的一些細節(jié)說明:

     同樣,如果Application_Error和<customerErrors>同時存在,也存在執(zhí)行順序的問題。

因為優(yōu)先級Application_Error事件> <customErrors>配置項,

所以發(fā)生應(yīng)用程序級錯誤時,優(yōu)先執(zhí)行Application_Error事件中的代碼,

如果Application_Error事件中調(diào)用了Server.ClearError()函數(shù),

<customerErrors>配置節(jié)中的defaultRedirect不起作用,因為Exception已經(jīng)被清除;

如果Application_Error事件中沒用調(diào)用了Server.ClearError()函數(shù),

錯誤頁會重新定位到defaultRedict指定的URL頁面,為用戶顯示友好出錯信息。

通過對.NET提供的以上四種錯誤處理機制的分析,我們可以把它們從不同的角度分類,便于我們理解和使用。

1.從功能上分類:

用于異常處理(Handling exceptions)是Page_Error事件和Application_Error事件;

用戶錯誤頁面重定向(Redirecting the user to an error page)的是 ErrorPage屬性 和 <customErrors>配置項。     

2.從錯誤處理的范圍分類:

用于頁面級(Page level)錯誤處理的是Page_Error事件 和 ErrorPage屬性;

用于應(yīng)用程序級(Application level)錯誤處理的是Application_Error事件 和 <customErrors>配置項。

Win2008 iis7設(shè)置404錯誤返回狀態(tài)200的解決辦法:
http://theartemis.cn/article/19210

server 2008服務(wù)器中IIS7.0以上版設(shè)置404頁面方法
http://theartemis.cn/article/19230
 

如對本文有疑問,請?zhí)峤坏浇涣髡搲瑥V大熱心網(wǎng)友會為你解答?。?點擊進入論壇

發(fā)表評論 (9432人查看,0條評論)
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴禁發(fā)布色情、暴力、反動的言論。
昵稱:
最新評論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學習

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號