重定向很简单。如果您要将内容永久移动到新位置,请使用301重定向。如果您要暂时移动它,请使用302重定向。
但是您可能想知道,为什么这很重要?毕竟,用户无法分辨301和302之间的区别。两者的功能相同。
答案很简单:搜索引擎查看301重定向和302重定向的方式不同。选择错误的搜索引擎可能会导致SEO问题,而这些问题往往在数月甚至数年内都未被发现。
在这篇文章中,您将学习:
有关何时使用301和302重定向的更多建议
如何创建301和302重定向
Google如何处理301和302重定向
如何修复“意外” 302重定向(以及是否应该)
何时使用301重定向
以下是一些常见的用例:
您将永久更改网页的URL。
您将永久迁移到新域。
您从HTTP切换到HTTPS。
您要解决非www / www重复内容 问题。
您将两个或多个页面或网站永久合并。
您将永久更改网站的URL结构。
何时使用302重定向
302重定向的用例很少,但是有一些:
您想要将用户重定向到他们使用的网站的正确版本(基于位置/语言)。
您要A / B拆分测试网页的功能或设计。
您希望获得有关新页面的反馈,而不影响旧页面的排名。
您正在执行促销,并希望将访问者暂时重定向到销售页面。
毫无疑问,还有其他用例,但它们往往是非常具体和个性化的。黄金法则是,如果您打算在短时间后恢复旧页面,则仅应使用302重定向。
如何创建重定向
您可以通过几种方式创建301和302重定向,但是最常见的方法是编辑网站的.htaccess文件。您将在网站的根目录中找到此文件。
==边注==如果您在站点的根目录中没有看到此文件,则说明您的服务器未在Apache上运行,或者您没有此文件。您可以使用此工具检查正在运行的服务器的类型。如果是Apache,解决方案是使用记事本或TextEdit创建.htaccess文件,并将其上传到您的根服务器。如果您正在运行Nginx,请阅读this。如果您使用的是Windows / IIS,请阅读此内容。
如果您使用的是WordPress,那么一个比较困难的选择是使用免费的SEO插件 来创建重定向。RankMath 内置了此功能,但此插件 也可以完成此工作。
如何创建301重定向
如果要创建从一个URL到另一个URL的301重定向,请将其添加到您的.htaccess文件中:
重定向301 /old-page.html /new-page.html
您也可以使用RankMath或“重定向”插件来执行此操作。只需选择所需的重定向类型,然后添加源URL和目标URL。
如果您要重定向整个网站,请将其添加到您的.htaccess文件中:
RewriteEngine叙述上
的RewriteCond%{HTTP_HOST} ^ oldsite.com [NC,OR]
的RewriteCond%{HTTP_HOST} ^ www.oldsite.com [NC]
重写规则^(。*)$ https://newsite.com/$1 [L,R = 301,NC]
只是知道您需要保持您的旧主机处于活动状态,才能使用.htaccess重定向您的网站,这可能会很昂贵。因此,通常最好通过DNS重定向。大多数注册商都允许您为此选择301或302重定向。如果您使用的是Google域,只需点击网站>转发域,然后输入新域并选择“永久重定向”。
您可以在301重定向的完整指南中了解如何为更多情况(例如,非www到www,HTTP到HTTPS)创建301重定向。
如何创建302重定向
如果要创建从一个URL到另一个URL的302重定向,请将其添加到您的.htaccess文件中:
重定向302 /old-page.html /new-page.html
您也可以使用RankMath或WordPress中的重定向插件来执行此操作:
如果您要重定向整个网站,请使用以下代码:
RewriteEngine叙述上
的RewriteCond%{HTTP_HOST} ^ oldsite.com [NC,OR]
的RewriteCond%{HTTP_HOST} ^ www.oldsite.com [NC]
重写规则^(。*)$ https://newsite.com/$1 [L,R = 302,NC]
只是知道您可能不想使用302将一个站点重定向到另一个站点。大多数域更改都是永久性的,因此您需要使用301。从HTTP重定向到HTTPS或从非www重定向到www(反之亦然)的情况与此相同。
Google如何对待301重定向与302重定向
由于301和302重定向的功能与最终用户相同,因此选择使用哪种重定向主要取决于Google如何对待它们。我们需要在这里谈论两件事:
1.索引化
2.链接信号
索引化
当一个网址重定向到另一个网址时,Google只会保留其中一个 网址的索引。
对于301重定向…
…这就是“新” URL。例如,如果您创建了一个从old-page.html到new-page.html的301重定向,则Google将为new-page.html编制索引,并为old-page.html取消索引。这是因为301重定向告诉Google这是永久性的举动,因此没有必要为旧的URL编制索引。
人们有时对此感到困惑,因为在创建301重定向后,使用 搜索时,旧网址仍会在Google中显示一段时间site
:。
例如, 多年前Moz更改了域名并将其域名从seomoz.org重定向 到moz.com,但seomoz.org仍然显示在Google中。
原因是,正如Patrick最近解释的那样,site:搜索不会告诉您是否已为URL编制索引。为此,您需要使用URL检查工具 或Google Search Console中的覆盖率 报告。
对于302重定向…
… Google索引的网址通常 是原始网址。但是,由于Google知道人们经常错误地将302重定向用于永久重定向,因此他们实际上分别评估了每个302重定向,以试图确定您的实际含义。
这就是Google的John Mueller所说的:
当我们识别到重定向并看到它是302时,我们首先假定它是一个临时重定向,并假定您要为初始URL编制索引,而不是重定向的目标。[…]但是,当我们意识到它实际上更像是永久重定向,而302可能是您不小心设置的东西,那么我们确实将其视为301。我们说,我们不用索引重定向的URL,而是ll索引重定向目标。
约翰·穆勒
约翰·穆勒 网站管理员趋势分析师Google
没人确切知道302重定向需要多长时间才能开始被Google视为永久重定向。通常是几周到几个月,但也可能是几天,几周或几个月。
在某些情况下,一开始Google甚至将302视为301。
例如,帕特里克(Patrick)最近进行了一个小实验,在其中他实现了从一个已建立站点到另一个站点的302重定向。Google检索“旧”域并看到重定向后,“旧”域从搜索结果中消失了,转而使用“新”域。
如果您不确定Google如何处理您的302重定向,请使用以下快速“窍门”:
将重定向URL粘贴到Search Console的URL检查工具中。如果显示“ URL不在Google上”警告,则Google必须将重定向视为永久重定向(301)。如果它在Google上,则他们将其视为临时(302)。
只需确保在执行此操作时检查上次爬网日期即可。如果此日期是在您实施重定向后出现的,请请求重新索引并稍后再返回。
边注:根据我们的观察,当重定向到“已建立”的页面或网站时,Google通常更快地将302重定向视为永久重定向。这可能是因为“新”页面或网站已经存在了一段时间,因此您要永久重定向URL的可能性要高于平均水平
链接信号
3XX重定向曾经用于淡化PageRank,但该重定向于2016年停止。
现在,当您将一个URL重定向到另一个URL时,链接信号将合并在一个URL上而不会被稀释。 但是,这种工作方式通常会被误解,因为重定向的类型会影响信号合并的位置。
对于301重定向…
…链接信号将“转发”合并 为“新” URL。
例如,如果old-page.html具有十个反向链接,然后将其重定向(301)到new-page.html,则所有链接信号将合并在new-page.html处。换句话说,Google应该将new-page.html排名为10个链接。
但是,它并不是那么简单,因为Google将不相关的重定向视为软404:
如果您将内容移至新URL而不进行大幅度更改,那么这不是问题。但是,如果重定向是无关紧要的(例如将旧博客帖子重定向到您的主页时),则指向“旧”页面的链接可能不会帮助“新”页面排名。因此,黄金法则是保持重定向尽可能相关。
如果您好奇Google如何处理您的301重定向之一,请尝试以下操作:
转到Search Console>链接>外部链接。
接下来,按“目标页面”过滤报告,然后粘贴到“新” URL中。例如,我们最近301重定向旧的博客文章(ahrefs.com/blog/seo-secrets/)我们的博客主页(ahrefs.com/blog/),所以我们会在博客网页上粘贴并选择URL从名单。
接下来,将“旧” URL粘贴到Ahrefs的站点资源管理器中, 然后转到“引用域” 报告。
最后,在GSC中,按“站点”过滤链接,然后逐个粘贴来自Ahrefs的引用域。
如果您对多个引荐域执行此操作,但在GSC中没有找到匹配项,则Google可能会将重定向视为软404,并且不计入指向“新” URL的反向链接。
如果匹配,请单击该站点以查看实际链接。您应该会看到以下内容:
请注意,“目标URL(如果不同)”列显示了“旧”重定向URL。这表明Google正在将指向重定向URL的链接计入“新” URL中。
对于302重定向…
…链接信号通常将“向后”合并 为“旧” URL。
例如,如果将old-page.html重定向(302)到new-page.html,并且new-page.html具有十个反向链接,则所有链接信号通常将合并在old-page.html处。换句话说,Google应该将old-page.html排名为10个链接。
但是,事情并不是那么简单。这取决于Google如何对待302重定向。
如果他们将其视为临时重定向,则链接信号的确会向后合并。假设重定向页面与“新”页面相同或相似。如果不是,则可以将其视为软404。
如果他们将其视为永久重定向,则链接信号将向前合并。
您可以使用URL Inspection工具检查Google如何处理重定向。只需粘贴“旧的”重定向URL即可。如果“ Google选择的规范”显示为“检查的URL ”(如下所示),则Google会将重定向视为临时重定向。如果没有,它将视为永久。
您是否应该“修复”意外的302重定向?
假设您在使用302重定向进行永久移动时犯了一个常见错误。您是否需要花费宝贵的时间将它们全部交换到301重定向?
答案取决于Google当前如何处理这些重定向。
如果他们自己解决问题,并且已经将“意外” 302视为永久移动,那么将其更改为301可能不会有任何影响。如果他们还没有解决问题,那么将重定向从302转移到301可能是最好的做法。
您可以使用GSC中的“ URL检查”工具来检查Google如何对待各个URL,如上一节所示。但是,如果您进行了大量重定向,那将非常耗时。一种更快的方法是首先查找获得自然流量的302重定向。毕竟,这是一个明显的迹象,表明Google仍将重定向视为临时重定向。
您可以在Ahrefs的Site Audit中进行此操作。只需爬网您的站点,然后检查“重定向” 报告中是否显示“ 302重定向”警告。
如果存在,请单击以查看受影响的URL,然后按“自然流量”从高到低对报告进行排序。
由于此数据是来自Ahrefs的Site Explorer的估计,因此值得在URL Inspection工具中仔细检查所有重定向的URL的访问量。如果用户声明的规范与Google声明的规范匹配,则Google将302重定向视为永久重定向。如果不这样做,则重定向的页面很可能会获得自然流量,因为它仍在被索引并且Google将其视为临时页面。如果您偶然使用302重定向进行永久移动,则这是不希望的。幸运的是,将302重定向交换到301应该可以解决此问题。
最后的想法
重定向并不那么复杂。如果您要将内容永久移动到新位置,请使用301重定向。如果您要暂时移动它,请使用302重定向。
也就是说,即使您确实使用了错误的重定向类型,也可能会让您放心,Google最终可能会弄清楚您的意思。这总是发生吗?当然不是。Google并非总是很聪明,每次都会想出自己的意思,所以最好 是在可能的情况下使用正确的重定向类型。