我得到一个错误,每次我上传我的webapp到提供商。由于使用了customErrors模式,我所看到的是默认的“运行时错误”消息,指示我关闭customErrors以查看有关错误的更多信息。

我恼怒地织好了网。配置如下所示:

<?xml version="1.0"?>
<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>

然而,我所得到的只是一个愚蠢的远程错误页面,上面没有任何有用的信息。 我还能做什么来关闭customErrors ?!


当前回答

它可能不是IIS!

我浏览了这一页上所有的答案,还有其他几个。它们没有一个解决了我们的问题,但它们是值得检查的好东西,而且会引起问题。所以先检查一下。如果您使用的是PHP,那么请检查PHP设置。

什么为我修复它是编辑我们的php.ini文件并指定:

display_errors: On

我还设置了:

display_startup_errors: On

只是为了更好的衡量。

这解决了问题,而我们真正的问题是在开发阶段迁移时遗漏了一个逗号。

我意识到这个页面链接到asp.net,我们也在使用,这不是一个asp.net问题,但当你搜索这些错误时,这个页面出现了,并有一些很好的信息来修复最常见的问题;只是不是我们的具体问题。配置更改确实解决了这个问题,然后我们就可以专注于asp.net文件了!

其他回答

如果你正在使用MVC预览4,你可能会遇到这种情况,因为你正在使用HandleErrorAttribute。行为在5中改变了,因此如果关闭自定义错误,它将不处理异常。

您还可以尝试在服务器机器上的浏览器中打开该网站。我不怎么使用ASP。但我记得自定义错误的东西有一个设置,只显示完整的错误文本在服务器上,作为一种安全措施。

一定要加上 就在system。web之后

我把它放在节点的末尾,但没有工作。

尝试重新启动应用程序(创建一个app_offline.htm而不是删除它就可以了),如果你仍然得到相同的错误消息,确保你只在web中声明了customErrors一次。配置或者类似的东西。网络中的错误。配置可能会对应用程序产生一些奇怪的影响。

在过去的几天里,这已经把我逼疯了,无法回避,但最终还是弄明白了:

在我的机器里。我在<system.web>下有一个条目:

<deployment retail="true" />

这似乎覆盖了你在web中指定的任何其他customError设置。配置文件,因此将上述条目设置为:

<deployment retail="false" />

现在意味着我可以再次看到我需要的详细错误消息。

这台机器。配置位于

32位

%windir%\Microsoft.NET\Framework\[version]\config\machine.config

64位

%windir%\Microsoft.NET\Framework64\[version]\config\machine.config