W1 Cybertech

W1

重定向对 SEO 有负面影响吗?

文/Reign

先给出答案,重定向不会对SEO有任何负面的影响——当然前提是重定向是设置正确的。

什么是重定向?

重定向是将一个URL指向到另一个URL的过程。当一个URL发生变化时,重定向可以确保在用户访问旧URL时他们会被自动重定向到新的URL,从而保持用户体验的连续性。重定向也对搜索引擎优化(SEO)很重要,因为搜索引擎需要知道哪个页面是最新和最准确的。

为什么重定向如此重要?

重定向是维护网站可用性和SEO的关键因素。如果不使用重定向来管理URL变化,那么搜索引擎将认为网站上的内容不存在或已经过时,这将影响您的搜索引擎排名。此外,如果没有正确配置重定向,访问者可能会遇到404错误页面或其他错误页面,这将对用户体验产生负面影响。

何时使用重定向?

以下情况可能需要使用重定向:

  • 移动网页的 URL(从 URL A 到 URL B)。
  • 删除了一个接收流量或有反向链接指向它的页面。
  • 重新开发您的网站并且结构发生了变化。
  • 将网站移至新域名。
  • 合并了两个或更多网站。
  • 从 HTTP 迁移到 HTTPS。
  • 需要防止尾部斜杠 URL 或非 www URL 上的重复内容。

有时只需要重定向站点上的单个 URL(或一系列单个 URL)或目录。其他时候,需要重定向整个域。但是需要了解的是,根据情况和最终目标,需要使用不同类型的重定向。

了解不同类型的重定向

以下是最常用的重定向类型:

HTTP重定向:HTTP重定向也许最常用的重定向类型是 HTTP 重定向。 很简单,正如W3C概述的那样,“HTTP 重定向是一种更丰富的重定向方式,因为它为用户代理提供了比新地址更多的信息:服务器还提供了一些有关重定向目的和类型的信息,这允许User-Agent 的行为取决于重定向的类型。”正是这些有关重定向目的和类型的信息使这种类型变得如此普遍,这意味着您可以根据自己的情况给出不同的指示。

301重定向/永久移动:301重定向是最常用的重定向类型,它告诉搜索引擎和浏览器页面已永久移动到新的URL。这将传递页面的所有SEO价值到新的URL,并将保持用户体验的连续性。应该使用301重定向来处理所有移动页面和删除页面的情况。

302重定向/临时发现和移动:302重定向告诉搜索引擎和浏览器页面已暂时移动到新的URL。这意味着页面的SEO价值不会传递到新的URL,因此这种重定向类型通常不应用于SEO目的。应该使用302重定向来处理暂时性更改,例如在维护期间将页面转移到另一个位置。

303重定向:303在 SEO 的层面被讨论的不多, 303 重定向可用于指示重定向不链接到新上传的resources,是到另一个页面(例如确认页面或上传进度页面)。 

例如,当用户点击浏览器的后退按钮时,这些可用于防止表单的内容被重新提交。

307重定向:307重定向与302重定向类似,告诉搜索引擎和浏览器页面已暂时移动到新的URL。然而,307重定向要比302重定向更严格一些,因为它要求浏览器在重定向时保留原始请求方法(如GET或POST)。这通常用于需要保留POST请求方法的场景,例如在进行表单提交时。

308重定向/永久移动:与 301 重定向一样,308 重定向表示永久移动。由于这些类型的重定向是相同的,因此您可以毫无问题地使用任何一种。

410重定向:410重定向告诉搜索引擎和浏览器页面已永久删除,并且不会再返回。与301重定向不同,410重定向告诉搜索引擎删除该页面的索引,而不是将其传递到新的URL。应该使用410重定向来告诉搜索引擎和用户页面已被永久删除。

元刷新/Meta Refresh:Meta Refresh是一种在HTML头部使用的重定向方法,它可以自动将用户从一个页面重定向到另一个页面。然而,这种重定向方法不被推荐使用,因为它会影响用户体验和SEO,并且可能被视为不良行为。

JavaScript重定向:使用 JavaScript 将用户和搜索引擎从一个页面重定向到另一个页面。很长一段时间谷歌都无法像服务器端 HTML 重定向一样正确识别这些。 然而,John Mueller 在 2019 年证实,“我们支持不同类型的 JavaScript 重定向,并遵循类似于我们遵循服务器端重定向的方式。”谷歌在呈现 JavaScript 方面已经非常擅长,因此,对这种类型的重定向的担忧不应该再像以前一样了,并且有证据表明这些重定向现在已经传递了 PageRank。

实现重定向的常用方法

  1. .htaccess文件:如果您使用Apache服务器,您可以在网站根目录中的.htaccess文件中添加重定向规则。例如,以下规则将将旧页面的URL指向新页面的URL:
				
					Redirect 301 /old-page.html http://www.example.com/new-page.html

				
			
  1. 编程语言:如果您使用的是动态网站,您可以使用编程语言(如PHP或Python)来实现重定向。例如,以下PHP代码将旧页面的URL指向新页面的URL:
				
					header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.example.com/new-page.php");
exit();
				
			
  1. 插件:如果您使用的是CMS(如WordPress或Joomla),可以使用插件来实现重定向。举例说明:如果使用的是 WordPress,可以使用“ Easy Redirects Manager ”插件;如果运行的是 Magento,则使用内置的 URL 重写模块;使用内置的URL重定向功能,如果你使用Shopify。这些插件通常允许您轻松地创建重定向规则,并可以在不影响网站性能的情况下管理重定向。
  1. 通过将服务器块添加到nginx.conf 文件(当服务器运行 Nginx 时)。首先打开nginx.conf文件。可以在终端中使用以下命令打开该文件:
				
					sudo nano /etc/nginx/nginx.conf
				
			

找到http块。这是Nginx配置文件中的一个主要块,其中包含了大量的配置信息。然后在http块中添加一个新的server块。一个server块指定了Nginx应该如何处理特定的HTTP请求。例如,要将Nginx配置为将所有来自example.com域名的请求重定向到www.example.com域名,您可以在http块中添加以下server块:

				
					server {
    listen 80;
    server_name example.com;
    return 301 http://www.example.com$request_uri;
}
				
			

保存文件并重新启动Nginx。在终端中输入以下命令,重新启动Nginx并加载刚添加的新server块:

				
					sudo service nginx restart
				
			
  1. 通过导入 mod_redirect 模块并使用 url.redirect(在 Lighttpd 服务器上时)。要使用mod_redirect模块和url.redirect指令在Lighttpd服务器上进行重定向,首先导入mod_redirect模块。在lighttpd.conf文件中添加以下行:
				
					server.modules += ( "mod_redirect" )
				
			

这将导入mod_redirect模块并使其可用于配置重定向规则。

然后在服务器块中添加重定向规则。例如,要将所有来自http://example.com的请求重定向到https://www.example.com,请在服务器块中添加以下行:

				
					$HTTP["host"] == "example.com" {
    url.redirect = ( "^/(.*)" => "https://www.example.com/$1" )
}
				
			

这将使用url.redirect指令指定重定向规则,并在匹配到example.com时将所有请求重定向到https://www.example.com

最后保存并重新加载Lighttpd配置。在终端中输入以下命令:

				
					sudo service lighttpd reload
				
			

这将重新加载Lighttpd配置文件并启用添加的重定向规则。需要注意的是,在配置Lighttpd服务器时,需要确保已安装和启用mod_redirect模块。如果您尝试使用url.redirect指令而没有导入该模块,Lighttpd服务器将无法识别该指令并引发错误。

需要再次强调的是,元刷新重定向JavaScript 重定向 (以及PHP 重定向)是重定向用户的其他替代方案,但不建议将它们作为 SEO 友好的解决方案。

正确重定向和避免常见问题的简单指南

避免循环重定向:循环重定向会导致页面在两个URL之间无限跳转。要避免这种问题,请确保您的重定向规则不会相互重叠或指向彼此。

优化SEO价值传递:使用301重定向来确保您的页面的SEO价值能够传递到新的URL。此外,请确保您的新页面与旧页面的主题和内容相似,以便搜索引擎能够正确索引您的新页面。

处理HTTPS重定向:如果您的网站启用了HTTPS,请确保您的重定向规则也包括HTTPS版本的URL。

更新内部链接:如果您更改了网站的URL结构,请确保您的网站上的内部链接已更新为指向新的URL。这将确保访问者和搜索引擎能够找到正确的页面,避免404错误。

使用正确的重定向类型:根据场景选择正确的重定向类型。使用301重定向将旧的URL永久重定向到新的URL,使用302重定向将旧的URL暂时重定向到新的URL,使用307重定向保留原始请求方法,使用410重定向告诉搜索引擎页面已被永久删除。
 

常见的重定向问题

404错误:如果您没有正确实现重定向,访问旧页面的用户和搜索引擎将看到404错误。这将损害您的SEO排名,并影响用户体验。

循环重定向:循环重定向会导致页面在两个URL之间无限跳转。这可能是由于重定向规则相互重叠或指向彼此而导致的。

错误的重定向类型:使用错误的重定向类型可能会导致搜索引擎错误地处理您的页面,并影响您的SEO排名。

Scroll to Top