【发布时间】:2013-06-07 13:56:20
【问题描述】:
我有 404.aspx 来管理对不存在页面的请求。 它在 IIS6 上完美运行,但现在我必须将其移至 IIS7。网站使用.net 2.0 经典32bit AppPool,无MVC。
像test.com/NotExist 这样的非.net 请求管理得很好,但我对像test.com/NotExist.aspx 这样的网址有疑问
我已将 .net 错误页面配置如下:
<customErrors defaultRedirect="/404.aspx" mode="On">
<error redirect="/404.aspx" statusCode="404" />
</customErrors>
它可以工作,但会将 url 转换为 test.com/404.aspx?aspxerrorpath=/NotExist.aspx
我必须避免这个 url 更改,所以我用谷歌搜索了我必须更改一行:
<customErrors defaultRedirect="/404.aspx" mode="On" redirectMode="ResponseRewrite">
但它显示默认错误消息而不是结果:
“/”应用程序中的服务器错误。 无法找到该资源。 说明:HTTP 404。您正在查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请检查以下 URL 并确保其拼写正确。
我检查了 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 但没有运气。
请帮忙。
【问题讨论】:
标签: asp.net redirect iis-7 custom-errors redirectmode