【发布时间】:2011-08-16 02:48:02
【问题描述】:
我几乎完成了对一个获得大量流量的现有网站的重大重写和重新设计/重组。我一直在使用 IIS 7 Url Rewrite Module 来启用无扩展和 SEO 友好的 url,以及将对旧页面的请求重定向到新站点结构中的适当页面。进展顺利,但我正在研究如何设置自定义 404 页面并受到阻碍。到目前为止,我已经在 web.config 的节点中设置了以下代码:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/404.htm" responseMode="ExecuteURL" />
</httpErrors>
问题是,它有效,但不完全!如果我转到一个不存在的 URL,我会得到我的自定义 404 页面,但请求会得到一个 200 OK 状态代码作为响应,而不是所需的 404。我已经摆弄了 httpErrors 节点的各种属性,但没有运气.有谁知道如何显示自定义 404 页面并返回实际的 404 状态码?
谢谢!
【问题讨论】:
标签: asp.net iis-7 url-rewriting http-status-code-404