Javascript 在加载页面之前获取URL并重定向
所以,我有一个有趣的情况。我一直在重新组织一个网站上的目录。我更新了旧文件,大约有100个,它们在一个新的位置。旧文件已被删除 我遇到的问题是,可能有数百人将书签直接添加到旧文件的URL。e、 i.wahwah.com/subSite/pdfs/something.pdf这些文件已经有5年历史了,所以他们无论如何都需要找到新的文件 因此,我可以在目录中放置一些文件来监视URL并重定向到新页面,而不是为每个单独的文件创建一个页面吗 它将关注wahwah.com/subSite/pdfs。。和重定向。或者在这个子网站的主目录中的某个地方监视URL是否包含/pdf路径 我知道我可以用java脚本抓取URL,但这对我没有帮助,除非我能做到上面所说的。我不知道我怎么能在.NET中做到这一点。我们的服务器支持.NET,因为我们的大多数网站应用程序都是用它制作的,但我不处理这些。我不能使用PHP,服务器不使用它 我希望JavaScript能以某种方式做到这一点,但这是我以前从未尝试过的,所以我不确定我能做到。我不太喜欢使用JS库,所以我不确定我一直在搜索什么Javascript 在加载页面之前获取URL并重定向,javascript,asp.net,web,Javascript,Asp.net,Web,所以,我有一个有趣的情况。我一直在重新组织一个网站上的目录。我更新了旧文件,大约有100个,它们在一个新的位置。旧文件已被删除 我遇到的问题是,可能有数百人将书签直接添加到旧文件的URL。e、 i.wahwah.com/subSite/pdfs/something.pdf这些文件已经有5年历史了,所以他们无论如何都需要找到新的文件 因此,我可以在目录中放置一些文件来监视URL并重定向到新页面,而不是为每个单独的文件创建一个页面吗 它将关注wahwah.com/subSite/pdfs。。和重定向
我找到了Grunt,但我还不能完全确定它是如何工作的。只是看看文件过滤器或matchBase。或者一些全局模式。如果您可以访问服务器,最好的选择是在wahwah.com/subSite/pdfs/目录中设置重定向。
如何做到这一点取决于您是在IIS还是unix上。在asp.net中,301重定向相当有效
if (HttpContext.Contains("http://old.aspx"))
{
HttpContext.Current.Response.Status = "301 Moved Permanently";
HttpContext.Current.Response.AddHeader("http://www.new.aspx");
}
或者在页面加载中,您可以编写:
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://new.aspx");
我应该把这样的东西放在哪里?在包含子站点或旧文件目录的目录中的单独文件中?@MGHandy由于您使用的是ASP.net,因此我假设您使用的是IIS。第一个应该放在global.asax中,特别是在应用程序_BeginRequest或应用程序_Start中。在第二种情况下,每个文件都必须位于旧网页的加载事件中。大约有100个旧文件。我需要另一种方法将所有这些路径重定向到新页面。