自定义错误页面未显示在网站上,但是在Visual Studio中运行时确实显示了

问题描述 投票:0回答:1

我正在GoDaddy服务器上设置用户接受站点。我已经阅读了一堆帖子,做了很多事情,但似乎没有任何效果。在Visual Studio中开发并运行项目时,一切正常。在实时服务器上,我没有获得自定义错误页面。它正在运行IIS 7。

我已经尝试过在web.config中使用httpErrors和CustomErrors使用不同的组合。单独使用两者。我读过,如果您有II7,最好使用httpErrors。以下是两个代码区域。我正在利用一个ID来获取代码和一页来提取所有错误。我也希望对此有所想法。尽管其他文档说您应该使用静态页面来处理错误,但是使用剃刀页面对我来说似乎是一个奇怪的主意,因为您必须在项目外部创建页面,然后将其添加到其中。

最初,我将这些设置作为错误索引,但是更改了它,因为我认为这可能是问题所在。原来不是..

<httpErrors errorMode="Custom">
  <remove statusCode="404" subStatusCode="-1"/>
  <error statusCode="404" path="Error/Index/404" responseMode="ExecuteURL"/>
  <error statusCode="500" path="Error/Index/500" responseMode="ExecuteURL"/>
</httpErrors>


 <customErrors mode="On" defaultRedirect="~/Error/Oops">
   <error statusCode="404" redirect="~/Error/Oops/404"/>
   <error statusCode="500" redirect="~/Error/Oops/500"/>
 </customErrors>

控制器很简单

public ActionResult Oops(int id)
    {
        Response.StatusCode = id;

        return View();
    }

我还要注意,错误的URL链接是正确的。即使我直接转到自定义错误页面Url,我也会得到404页面,而不是自定义页面。对我来说,如果您有一个提供视图的控制器,并且向其提供了所需的信息,则应该显示它。

编辑-

[此外,当我使用httpError时,也会在页面上显示此错误-由于发生内部服务器错误,因此无法显示该页面。

服务器上是否有需要打开或关闭的东西?

我正在GoDaddy服务器上设置用户接受站点。我已经阅读了一堆帖子,做了很多事情,但似乎没有任何效果。在Visual Studio中开发并运行...

c# asp.net-mvc
1个回答
0
投票

经过一些挖掘,找到了更详细的文档。这是解决我的问题的原因。

© www.soinside.com 2019 - 2024. All rights reserved.