ASP .net 4和IIS 7.我的web.config中有以下部分
<system.webserver>
<httpErrors existingResponse="PassThrough">
<remove statusCode="404" />
<error statusCode="404" subStatusCode="4" responseMode="ExecuteURL" path="/404.aspx" />
<error statusCode="404" responseMode="ExecuteURL" path="/404.aspx" />
</httpErrors>
</system.webServer>
<!-- Tons of junk -->
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="Error.aspx" />
</system.web>
这样做的结果是,对于未处理的asp .net错误,通常会导致黄色死亡屏幕呈现Error.aspx。当我转到一个不存在的页面,例如www.example.com/fake.aspx时,它会按预期呈现404.aspx,但它会向浏览器发送302以重定向而不是仅渲染404.
这是我想要完成的。在本地跑步时,我希望看到死亡的黄色屏幕。运行远程时我想在该用例中看到Error.aspx。最后,我想在本地和远程看到404.aspx而不进行302重定向。
我已经查看了其他一些stackoverflow问题,我看到了很多相互矛盾的建议。