我有404.aspx来管理对不存在页面的请求。 它在IIS6上运行完美,但现在我必须将其移至IIS7。该网站使用.net 2.0经典32位AppPool,没有MVC。
像test.com/NotExist
这样的非网络请求管理得很好,但我遇到了test.com/NotExist.aspx
这样的网址问题
我已经配置了.net错误页面如下:
<customErrors defaultRedirect="/404.aspx" mode="On">
<error redirect="/404.aspx" statusCode="404" />
</customErrors>
并且有效但将网址转换为test.com/404.aspx?aspxerrorpath=/NotExist.aspx
我必须避免这个网址更改所以我用Google搜索我必须更改一行:
<customErrors defaultRedirect="/404.aspx" mode="On" redirectMode="ResponseRewrite">
但它显示默认错误消息而不是结果:
>'/'应用程序中的服务器错误。 无法找到该资源。 说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。
我检查了https://stackoverflow.com/questions/12463412/responserewrite-redirect-mode-is-not-working和CustomErrors does not work when setting redirectMode="ResponseRewrite"以及customErrors with redirectMode="ResponseRewrite" do not work on shared hosting,但没有运气。
请帮忙。
答案 0 :(得分:0)
处理程序映射 - &gt; * .aspx(我有四个,一个名为“PageHandlerFactory-ISAPI-2.0”) - &gt;编辑 - &gt;请求限制。
我们已经关闭了“仅在调用处理程序.....”复选框。现在它已打开并选择“文件”单选按钮。