【发布时间】:2011-06-04 08:56:18
【问题描述】:
我想对我的网站进行一些更改,这需要重写一些 URL 以保留我的旧 URL。我无法使用正确的 URL 重写,因为我对托管服务提供商的控制非常有限。
由于我使用的是 ASP.NET 并且我的所有页面都具有 .aspx 扩展名,因此我的一个想法是在 Application_BeginRequest 事件下的 global.asax 中放置一些内容。这可以检查所请求页面的 URL 是否是旧的 URL 之一,并使用 Server.Transfer 打开正确的页面。
我的问题是,这是否会将这种不可见的信息转移给 Google?我不希望我在 Google 中的排名受到影响。
【问题讨论】:
-
Server.Transfer 在服务器端使用重定向,然后客户端从您放置用于重定向的 url 获得响应。如果您使用 Server.Transfer,他们会使用 302
-
Server.Transfer对 Google 是不可见的。服务器将简单地在请求的 URL 下提供目标内容,而不是重定向。如果爬虫可以访问两个 URL,这可能会导致内容重复(SEO 不佳)。 -
@Steven Spielberg:不,客户端在使用 Server.Transfer 时不会获得 HTTP 302。查看 Oded 的答案
标签: asp.net