Sharepoint:处理*.asp请求

Sharepoint:处理*.asp请求,sharepoint,asp-classic,url-rewriting,migration,http-status-code-301,Sharepoint,Asp Classic,Url Rewriting,Migration,Http Status Code 301,我们已经将一个旧的ASP站点移植到SharePoint,并竭尽全力保持站点结构不变,唯一的变化是扩展名从.ASP更改为.aspx。我们301将所有.asp请求重定向到等效的.aspx页面 问题是谷歌不尊重301重定向的页面排名。这造成了一个重大问题。所以想知道是否有一种方法可以接受对.asp页面的请求并发布SharePoint.aspx页面,但保持url不变,即没有301重定向 谢谢。301重定向意味着“永久移动”,对于搜索引擎而言,这是移动页面的正确方式。如果您进行URL重写,这会将.aspx

我们已经将一个旧的ASP站点移植到SharePoint,并竭尽全力保持站点结构不变,唯一的变化是扩展名从.ASP更改为.aspx。我们301将所有.asp请求重定向到等效的.aspx页面

问题是谷歌不尊重301重定向的页面排名。这造成了一个重大问题。所以想知道是否有一种方法可以接受对.asp页面的请求并发布SharePoint.aspx页面,但保持url不变,即没有301重定向

谢谢。

301重定向意味着“永久移动”,对于搜索引擎而言,这是移动页面的正确方式。如果您进行URL重写,这会将.aspx页面返回给用户代理,但返回原始的.asp URL,搜索引擎将不会更明智,并将继续将旧URL保留在其索引中

如果您决定使用这种方法,您可以在ASP.NET管道中使用HTTP模块实现重写-有一个用于IIS的工具,可以完成此操作,并且易于配置


缺点是你必须永远保持这种状态。我建议继续使用301重定向,并在谷歌重新调整索引时保持耐心。不要忘记Google web master工具,它可以帮助您完成这种过渡。

感谢SPDoctor的建议。我们最终很简单地解决了这个问题。在我们的自定义httpmodule中,在context.beginrequest eventhandler中,我们只需执行HttpContext.Current.RewritePath到等效的.aspx页面,而不是执行301重定向。这基本上是Scott Guthrie博客文章中的技巧2。