1

我在 MVC4 项目中创建了一些自定义错误页面。我使用 Application_Error 和 HandleErrorAttribute 进行路由。

还,

它在我的开发计算机上运行良好,在 IIS 8.0 下

当我将项目发布到生产服务器时,在 IIS 7.5 下,它显示默认错误页面,而不是自定义页面。

我错过了什么?

4

2 回答 2

0
 <customErrors mode="On" defaultRedirect="~/Error/Error.html" redirectMode="ResponseRewrite">
      <error redirect="~/Error/403.aspx" statusCode="403" />
      <error redirect="~/Error/404.aspx" statusCode="404" />
      <error redirect="~/Error/500.html" statusCode="500" />
    </customErrors>

在根目录“错误”中创建​​页面 403.aspx

    <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>

<!DOCTYPE html>

<html>
<head runat="server">
    <meta name="viewport" content="width=device-width" />
    <title>403 Not Found</title>
</head>
<body>
    <%
    Server.ClearError();
Response.Status = "403 - Forbidden: Access is denied.";
Response.StatusCode = 403;
         %>
    <div>
    <h2>403 - Forbidden: Access is denied.</h2>
    </div>
</body>
</html>
于 2017-03-12T07:42:15.027 回答
0

从操作方法中删除任何响应代码设置语句。

喜欢

 Response.StatusCode = 404;

删除它并尝试一下。

于 2021-10-30T17:31:47.973 回答