在我的网站上,断开的链接会引发默认的页面未找到错误。在 web.config 中,我打开了 CustomErrors 并将 404 错误转发到自定义消息。
在我的开发盒上它可以工作,在主机上它不能。
有任何想法吗?ASP.NET MVC 1.0、SQL 2005、IIS 6 主机(是的,我希望它是 IIS7 - 但他们想向我收取移动站点的费用)。
提前致谢!
在我的网站上,断开的链接会引发默认的页面未找到错误。在 web.config 中,我打开了 CustomErrors 并将 404 错误转发到自定义消息。
在我的开发盒上它可以工作,在主机上它不能。
有任何想法吗?ASP.NET MVC 1.0、SQL 2005、IIS 6 主机(是的,我希望它是 IIS7 - 但他们想向我收取移动站点的费用)。
提前致谢!
CustomErrors 只会触发 .NET 实际分配处理的文件。在您本地的 Visual Studio 中,这涵盖了所有内容,但在 IIS6 中,它仅涵盖与 .NET 直接相关的文件(.aspx、.ashx、.asmx 等)。这意味着,如果您希望它用于所有内容,则必须添加一个 ISAPI 过滤器来绑定所有要由 .NET 处理的文件,这会带来开销,并且如果您定义了任何全局处理程序或 HttpModules 可能会导致一些意外行为。
如果您想走这条路,此页面将帮助您配置通配符绑定
您是否考虑过将其放入IIS6 配置而不是 .NET 中?这对您来说可能比尝试在 IIS6 中使用来自 .NET 的 CustomErrors 更简单。
作为旁注,IIS7 集成管道模式没有这些问题,默认情况下所有文件都由 .NET 处理。
machine.conf 设置可能会覆盖您的 web.config 设置。您是否联系过您的主机并询问他们是否覆盖了 CustomErrors 标签?