0

我有 404.aspx 来管理对不存在页面的请求。它在 IIS6 上完美运行,但现在我必须将其移至 IIS7。该网站使用 .net 2.0 经典的 32 位 AppPool,没有 MVC。

像这样的非 .net 请求test.com/NotExist得到了很好的管理,但是我对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-workingCustomErrors 在设置 redirectMode="ResponseRewrite"customErrors with redirectMode="ResponseRewrite" 时不起作用在共享托管,但没有运气。

请帮忙。

4

1 回答 1

0

处理程序映射-> *.aspx(我有四个,一个名为“PageHandlerFactory-ISAPI-2.0”)-> 编辑-> 请求限制。

我们关闭了“仅在.....时调用处理程序”复选框。现在它已打开并选择了“文件”单选按钮。

于 2013-06-20T15:47:07.913 回答