谷歌SEO:什么是301重定向呢?
重定向是一种在用户和机器人请求旧URL但页面位置已更改时将其发送到新URL的方法。当您搬到美国的新地址时,您可以通过美国邮政服务(USPS)设置邮件转发。如果有人向您的旧地址发送邮件,USPS将查看他们的邮件转发规则并意识到您不再居住在旧地址。他们会收取邮件并将其递送到您的新位置而不是旧位置。这也是重定向的工作原理。用户或机器人请求旧位置,然后他们会被转发到新位置。
何时使用重定向?
您需要使用重定向来:
移动网站或页面
想要合并重复的页面
合并网站
删除后将用户发送到新页面
更改您的URL结构或清理您的URL
重定向类型及其SEO影响
重定向有助于组合页面之间的信号,并帮助搜索引擎确定应向用户显示哪个页面。这是一个称为规范化的过程,Google使用它来帮助将重复的页面排除在索引之外。换句话说,重定向对于SEO很重要。SEO社区中存在很多关于重定向的误解和误解,我希望通过这篇文章能够澄清这些误解和误解。
重定向可以是永久的,也可以是临时的,具体取决于您是否打算保留重定向。这也会影响哪个页面将被索引并显示在搜索引擎中,我将在下一节中详细介绍。重定向也可以是服务器端的,这意味着它们发生在服务器上的某个地方,也可以是客户端,这意味着它们发生在用户的浏览器内部。
什么是永久重定向?
永久重定向表示资源已永久移动到新位置。当您执行以下操作时,您应该使用永久重定向:
永久更改网页或其他资源的URL。
永久迁移到新域。
从HTTP切换到HTTPS。
想要解决非www/www重复内容问题。
永久合并两个或多个页面或网站。
永久更改您网站的URL结构。
永久重定向是规范化的强烈暗示,来自页面的信号(如链接)应该将新URL合并到页面。通常,新页面将具有所有信号并显示在搜索引擎中。假设您将页面从c-sz.com.com/x重定向到www.c-sz.com/x而不更改内容。链接信号将在www.c-sz.com/x进行整合。换句话说,如果c-sz.com/x有10个反向链接,www.c-sz.com.com/x就会感受到它们的好处,就好像它们直接指向它一样。
只有当重定向不相关时,这种情况才不会发生,因为Google将不相关的重定向视为软404。例如,假设您将博客文章重定向到您的主页。谷歌可能不会合并链接信号,因为这两个页面完全不同。在极少数情况下,Google可能仍将原始URL视为索引中显示的规范版本。许多SEO知道可能会发生相反的情况,即临时重定向可以被视为永久重定向,但永久重定向有时也可以被视为临时重定向。
让我们看一下永久重定向的一些类型:
1.HTTP 301
301重定向是一种服务器端重定向,它将机器人和用户转发到新URL,并告诉搜索引擎资源已永久移动。比如c-sz.com做301重定向到www.c-sz.com。
2.HTTP 308
308重定向与301重定向相同,不同之处在于它在执行重定向时保留原始请求的HTTP方法(GET或POST)。出于SEO目的,它们是相同的,但如果您有通过表单发送的数据,您不希望在GET和POST之间切换。
3.JavaScript重定向
JavaScript重定向使用JavaScript指示浏览器将用户或机器人重定向到不同的URL。由于需要呈现页面才能触发此类重定向,因此它是客户端的而不是首选。Google会渲染他们要索引的每个页面,但此过程中可能会出现问题,导致渲染失败。其他重定向类型得到更好的支持并且更可靠。
4.加密重定向
没有实际重定向的重定向?听起来很奇怪,但谷歌将其视为永久重定向。这意味着他们还应该将所有信号转发到新URL。加密重定向是一种特殊情况,您收到有关移动到新域的消息,但没有发生实际的重定向。
什么是临时重定向?
临时重定向表示资源已暂时移动到新位置。当您执行以下操作时,您应该使用临时重定向:
希望将用户重定向到适合他们的网站版本(基于位置/语言)。
想要对网页的功能或设计进行A/B拆分测试。
进行促销并希望暂时将访问者重定向到销售页面。
临时重定向是规范化的一个弱暗示,来自页面的信号(如链接)应该整合到新页面。因为它是一个弱信号,所以大多数时候信号实际上会合并到重定向的原始页面。
当重定向到已建立的页面或网站时,谷歌似乎更快地将临时重定向视为永久重定向。这可能是因为新页面或网站已经存在了一段时间,因此您很可能打算永久重定向URL。让我们看一下临时重定向的一些类型。
1.HTTP 302
302重定向将用户转发到新的URL,并告诉搜索引擎资源已暂时移动。
2.HTTP 307
307重定向与302重定向相同,只是它在执行重定向时保留原始请求的HTTP方法(POST、GET)。对于SEO来说,情况是一样的,但如果您有通过重定向表单发送的数据,那么您不希望在GET和POST之间进行交换。值得指出的是,在排除重定向问题时,您可能会看到不同版本的307,这是浏览器中发生的缓存重定向。这与HSTS相关,并告诉浏览器在请求不安全的资源时切换到安全连接(HTTPS)。
当网络服务器要求客户端仅使用HTTPS连接(HSTS策略)时,Google将不会看到307,因为它已缓存在浏览器中。初始命中(没有缓存)将有一个服务器响应代码,可能是301或302。但是您的浏览器将向您显示后续请求的307,这使得故障排除变得更加困难。您将需要使用新的隐身会话才能查看返回的状态代码。
3.HTTP 303
303重定向将用户转发到与请求的资源类似的资源,是重定向的一种临时形式。它通常用于诸如当用户点击浏览器中的“后退”按钮时防止表单重新提交之类的事情。您通常不会看到用于SEO目的的303重定向,但如果您这样做,它将被视为302/307。
4.元刷新(>0秒)
当元刷新等于0秒时,将被视为永久重定向;当元刷新大于0秒时,将被视为临时重定向。元刷新重定向告诉浏览器在设定的秒数后重定向用户。它发生在浏览器中并且是客户端。
5.HTTP刷新(>0秒)
HTTP刷新在等于0秒时被视为永久重定向,在大于0秒时被视为临时重定向。HTTP刷新类似于元刷新,但它发生在HTTP标头响应中。它可以在服务器端实现,但实际上是在客户端触发。
什么是服务器端重定向?
服务器端重定向是指当请求页面时,服务器决定将用户或搜索引擎重定向到何处。它们通常具有相应的状态代码301、302、303、307或308。服务器端重定向是进行SEO重定向的首选方法。
1.服务器级
这些是在您的服务器上发生的重定向。实现它们的方式将根据您的网站主机以及后端使用的服务器环境或脚本语言而有所不同。任何常见类型的服务器都应该有详细的文档记录。最常见的是Nginx、Apache、Cloudflare Server、LiteSpeed、Microsoft-IIS和Node.js。
在许多常见系统中,您只需输入重定向,它就会自动触发。然而,有些系统充当错误捕捉器。您可以输入重定向,并且在删除旧页面之前它不会触发。这为流程增加了一个额外的步骤,但不太容易出错。
1.DNS级
您的名称服务器通常由您的域名注册商或可能由您的CDN管理。每个提供商都略有不同,但他们通常都有您可以找到的文档。此级别的重定向通常用于网站迁移。某些主机可能允许您指定重定向的状态代码,例如301或302。一些提供商甚至允许重定向HTTPS版本的页面。从技术上讲,HTTPS在这个级别上并不存在,这在过去也不是一个选项,但一些提供商已经找到了一种方法来实现这一点。
2.CDN级
许多CDN有多种实现重定向的选项。例如,在Cloudflare上,您可以执行单个或批量重定向,有特定的重定向规则,您可以编写带有重定向的页面规则,您可以使用工作器和键值对来实现重定向,或者您可以使用工作器来修改标头并添加重定向。我通常更喜欢在边缘(CDN级别)进行重定向,而不是在服务器上进行重定向。对于其他人,我始终建议您选择最容易实现的方法。对于许多人来说,这是服务器级重定向。
3.客户端重定向
客户端重定向由用户的浏览器触发。在重定向发生之前,用户可能会暂时看到某个页面。您通常不应该在客户端进行重定向,除非这是您唯一的选择。