301是否可以使用javascript或jQuery进行重定向?

问题描述 投票:21回答:5

我正在运行Apache 2.0,我只是想知道是否有可能使用JavaScript或jQuery进行301重定向。

我有一个带有<a></a>href标记到指定的位置,当我单击该链接时,我被要求进行301重定向。

这是针对SEO的,我正在尝试找到一种方法,以使301重定向到链接中的同一页面,而不必创建新页面或创建表单/提交。

javascript jquery seo http-status-code-301
5个回答
24
投票

简而言之

JavaScript完全在客户端上运行。 301重定向应该是来自服务器的响应。这意味着没有服务器支持就无法执行此操作。


18
投票

我知道这是一个古老的问题,但是答案并未真正解决问题中提出的主要问题,该问题是出于SEO目的的301重定向(而且今天的答案可能与问题出现时的答案大不相同。最初是被询问和回答的。)>

不,您不能301从客户端重定向的答案在技术上是正确的,但是(更重要的是)您不一定需要这样做。虽然首选真正的301,但在这种情况下(例如,从hashbang URL过渡回传统URL)是不可能的,但问题的实质是是否存在可行的替代方案来实现目标。

Search Engine Land did a detailed test Google关于JavaScript的功能,这是该文章的相关摘录:

  1. JavaScript重定向
  2. [我们首先测试了常见的JavaScript重定向,改变了URL的使用方式以不同的方式表示。我们选择的方法是window.location函数。进行了两项测试:包括测试A在window.location函数中赋予属性的绝对URL。测试B使用了相对网址。

结果:重定向很快被Google跟踪。从一个索引的观点,它们被解释为301s-最终状态网址替换了Google索引中的重定向网址。

[在随后的测试中,我们使用了权威页面,实现了JavaScript重定向到网站上的新页面内容完全相同。原始网址排名在Google查询热门查询。

结果:按预期,重定向由Google执行,原始页面已从索引中删除。新网址已编入索引,立即针对相同查询排名在相同位置。这个让我们感到惊讶,并且似乎表明JavaScript重定向可以(在次)的行为完全类似于排名中的301永久重定向观点来看。

下一次您的客户想要为他们的网站移动了,您的答案可能不必是“请不要。”它在这种关系中似乎出现了排名信号的转移。Google’s guidelines

引用了这一发现。

“使用JavaScript重定向用户可能是合法的做法。例如,如果您在用户登录后将其重定向到内部页面在其中,您可以使用JavaScript来实现。检查JavaScript或其他重定向方法以确保您的网站遵守我们的准则,考虑意图。请记住,在以下情况下,301重定向是最佳选择移动您的网站,但是您可以为此使用JavaScript重定向如果您无权访问网站的服务器,则可以使用。”


7
投票

301是服务器响应代码。您将无法从jQuery创建301重定向。


2
投票

301 redirects是永久重定向,基本上是HTTP服务器响应。 JavaScript / jQuery是在客户端上执行的东西。两个不同的世界。


0
投票

如果仅用于SEO,则可以使用<meta http-equiv="refresh" content="0;url=YOUR_URL">Google认为这不是301重定向,但不是

© www.soinside.com 2019 - 2024. All rights reserved.