Sharepoint 2010自定义404页面 - asp扩展

时间:2011-01-03 17:45:08

标签: sharepoint sharepoint-2010 http-status-code-404

我正在使用SharePoint 2010发布网站。它正在取代使用asp。

构建的遗留站点

由于它是面向公众和匿名的,我们正在实施自定义404页面。奇怪的是,这不是简单的OOTB(像往常一样),但我确实设法部署了404页面并使用事件接收器将其链接起来。完美,工作正常。

所以,在测试中我尝试输入一些不存在的随机页面。它适用于.htm,.html和.aspx。接下来,我尝试了.asp扩展名,因为这是所有优秀书签/搜索引擎链接的基础。而不是404页面我得到一个空白页面。我在Firebug中检查过它,文件实际上是带有404标题返​​回的,但它没有内容。不好。

有人解决了这个问题吗?是自定义http模块的唯一途径吗?

顺便说一句,另一个奇怪的行为是,如果你使用未知的扩展名,它会将你的404页面中的html呈现为文本! 修改:此外,如果您输入不存在的无扩展名文件夹,则会出现相同的行为。哇,这个奇怪的野兽继续让我烦恼。

感谢。

更新

看起来HttpModule是唯一的方法。我有这个工作 - 如果有人想要完整的代码让我知道。我会在这里发布它,但是SO代码格式化程序正在破坏它。

web.config条目如下所示:

<add name="PageNotFoundHttpModule" type="ProjectName.PageNotFoundHttpModule, ProjectName, Version=1.0.0.0, Culture=neutral, PublicKeyToken=fb507da11a891ef3" preCondition="integratedMode" /> 

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:0)

HttpModule肯定是要走的路。我按照这个页面开始工作

http://blog.mastykarz.nl/sharepoint-2010-page-not-found-404/

但是,该模块仅在我省略前提条件时才有效,否则您将遇到空白页。

相关问题