在Asp.Net MVC中显示401的自定义错误页面

时间:2011-12-27 23:12:40

标签: asp.net-mvc http-status-code-401 custom-error-pages

我正在开发ASP.net MVC 3应用程序,如果他无法访问该应用程序,我需要向用户显示友好页面。我在网上跟踪了很多文章,但没有一个提到上述问题的端到端解决方案,因此我无法使其发挥作用。

任何指针??

非常感谢。

2 个答案:

答案 0 :(得分:0)

我在我的应用程序中所做的是创建一个更“友好”的共享视图,然后将响应代码设置为我需要的任何内容。例如,我将创建一个共享的ErrorPage视图,然后使用Response.StatusCode = 500来确保浏览器正确注册它是一个错误页面。无法告诉你有多少次我看到自定义页面未找到页面没有将状态代码正确设置为404,因此它返回了200状态并被搜索引擎索引。

答案 1 :(得分:0)

您的控制器上是否有[Authorize]设置?配对

<authentication mode="Forms">
    <forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>

而不是401,我的用户被重定向回我的登录页面。

如果您的身份验证失败,您只需执行RedirectToAction即可。