2015-11-06 54 views
1

我有一个运行小型node.js应用程序的项目作为反向代理。一些反向代理接收到的请求被引导到安装在同一台机器上的IIS,这自然会通过localhost/127.0.0.1命中IIS。ASP.NET禁用本地主机上的调试错误消息

因此,如果发生错误,IIS会自动返回详细的错误消息。自然,代理将这些发送给用户,这是不好的,因为它们包含的信息比我想让外部用户看到的要多。我试图通过在web.config中显式设置编译debug =“false”来关闭详细的错误消息,但由于请求经过本地主机,因此IIS似乎决定返回详细的调试错误消息。

是否有办法禁用这些调试错误消息,即使请求通过本地主机传回时也会被返回?

我正在运行Windows 2012 RS,IIS 8,.NET 4.6。

回答

0

好吧,我发现我需要做的,以确保IIS从不返回本地或非本地的详细错误消息。

更多详情can be found here

简短的回答是:启动IIS管理器,点击网站,在IIS下转到错误页面,右键点击预定义的错误信息,选择“编辑功能设置”,选择“自定义错误页面”。然后定义你想要显示的页面。

或者,您可以在system.webServer下的web.config中使用如下列出的值定义您的首选项。 “errorMode”默认为“DetailedLocalOnly”,这会导致我试图避免的问题。设置为“自定义”可解决问题。

<httpErrors errorMode="Custom"> 
    <remove statusCode="401" subStatusCode="-1"/> 
    <error statusCode="401" prefixLanguageFilePath="" path="/errors/401.html" responseMode="ExecuteURL"/> 
</httpErrors> 
相关问题