asp.net mvc5中服务器上的自定义错误

时间:2015-10-09 09:27:25

标签: c# asp.net asp.net-mvc

我的asp.net mvc 5中的应用程序出现问题。我尝试创建自定义错误视图。我按网站创建: first sitesecond site

当应用程序像本地站点一样运行时,一切正常,但是当我在服务器上部署它时,自定义错误页面不起作用。

在网络配置中,我的代码如下:

<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/ErrorPages/Error500.cshtml" >
  <error statusCode="500" redirect="~/ErrorPages/Error500.cshtml"/>
  <error statusCode="404" redirect="~/ErrorPages/Error404.cshtml"/>
</customErrors>

...

<httpErrors errorMode="Custom" existingResponse="Replace">
  <remove statusCode="500"/>
  <error statusCode="500" path="/ErrorPages/Error/Error500" responseMode="ExecuteURL"/>
  <remove statusCode="404"/>
  <error statusCode="404" path="/ErrorPages/Error/Error404" responseMode="ExecuteURL"/>
</httpErrors>

错误控制器:

public ActionResult Error500()
    {
        Response.StatusCode = 500;

        return View();
    }

    public ActionResult Error404()
    {
        Response.StatusCode = 404;

        return View();
    }

并查看:

@{
    ViewBag.Title = "Error404";
}

有人知道出了什么问题吗?

1 个答案:

答案 0 :(得分:1)

我很确定在部署时它无法正常工作的原因是因为您运行的是不同的IIS版本。

在这个主题中看看Marco的回答。我不能更好地解释它: ASP.NET MVC 404 Error Handling