ASP.NET設(shè)置自定義401錯(cuò)誤頁面方法詳解
用瀏覽器訪問服務(wù)器時(shí),不同情況下會(huì)返回不同的信息。服務(wù)器發(fā)生錯(cuò)誤就會(huì)返回錯(cuò)誤信息,我們最熟悉的就是404錯(cuò)誤頁面,但是這里我想和大家分享下asp.net條件下怎樣設(shè)置401自定義錯(cuò)誤頁面。
談到401錯(cuò)誤,雖然沒有404錯(cuò)誤那么被大家所熟知,但是對(duì)服務(wù)器有所了解的人都知道,http錯(cuò)誤代碼的含義,"401" : Unauthorized,而如果細(xì)分下就是如下:
HTTP 401.1 - 未授權(quán):登錄失敗
HTTP 401.2 - 未授權(quán):服務(wù)器配置問題導(dǎo)致登錄失敗
HTTP 401.3 - ACL 禁止訪問資源
HTTP 401.4 - 未授權(quán):授權(quán)被篩選器拒絕
HTTP 401.5 - 未授權(quán):ISAPI 或 CGI 授權(quán)失敗
我們可以通過ASP.NET配置文件Web.config 來進(jìn)行設(shè)置,用這個(gè)標(biāo)簽來進(jìn)行設(shè)置,代碼如下:
<customErrors defaultRedirect="ErrorPage.aspx" mode="On">
<error statusCode="401" redirect="AccessDenied.aspx" />
</customErrors>
請(qǐng)一定要確保這些錯(cuò)誤頁面的訪問,此外,如果你有
<authorization>
<deny users="?" />
</authorization>
在你的驗(yàn)證里面,然后你必須把這些錯(cuò)誤頁面放到一個(gè)單獨(dú)的文件夾里面,然后添加一個(gè)ASP.NET配置文件Web.config,加入下面一段代碼:
<authorization>
<allow users="*" />
</authorization>
如果您使用窗體身份驗(yàn)證,那么有幾種方法可以做到這一點(diǎn)。最簡(jiǎn)單的方法是處理所有的人都能在到達(dá)另外一個(gè)文件夾中的一切不安全的頁面(登錄頁面,錯(cuò)誤頁面,修改密碼)。名稱為“InSecured”或其它名稱,然后在該文件夾中添加一個(gè)web.config文件到該文件夾中,并把下列代碼:
<authorization>
<allow users="*" />
</authorization>
添加在最底層的web.config文件中,其它文件夾和頁面里則添加下面這段代碼:
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
以上就是如何設(shè)置自行定義401錯(cuò)誤頁面的方法,不過這里要說明的是的作用是為ASP.NET應(yīng)用程序提供有關(guān)自定義錯(cuò)誤信息的信息。它不適用于 XML Web services 中發(fā)生的錯(cuò)誤。
關(guān)鍵詞:401錯(cuò)誤頁面
閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!
- 0
- 1
- 1
- 1
- 29
- 1