使用javascript或jQuery可以重定向301吗?

Cal*_*cet 23 javascript seo jquery http-status-code-301

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

我有一个指定位置的<a></a>标签,href当我点击该链接时,我被要求进行301重定向.

这是针对搜索引擎优化,我试图找到一种方法来301重定向到链接中的同一页面,而无需创建新页面或创建表单/提交.

tec*_*bar 26

总之没有.

JavaScript完全在客户端运行.301重定向应该来自服务器的响应.这意味着没有服务器支持就无法做到这一点.


Chr*_*les 20

我知道这是一个古老的问题,但答案并没有真正解决问题中提出的主要问题,即301重定向用于搜索引擎优化的目的(今天的答案可能与最初问题时的答案不同)问及回答).

答案是,你不能从客户端301重定向在技术上是正确的,但是(更重要的是)你不一定需要.虽然真正的301会是首选,但在这种情况下,如果不可能(或者将hashbang URL转换回传统的URL),问题实际上是否有可行的替代方案来实现目标.

Search Engine Land对Google的JavaScript功能进行了详细测试,这是该文章的相关摘录:

  1. JavaScript重定向

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

结果:谷歌迅速跟踪了重定向.从索引的角度来看,它们被解释为301s - 最终状态URL替换了Google索引中的重定向URL.

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

结果:正如预期的那样,重定向后跟谷歌,原始页面从索引中删除.新网址已编制索引,并立即在相同查询的相同位置排名.这让我们感到惊讶,并且似乎表明JavaScript重定向可以(有时)与排名角度的永久性301重定向完全相同.

下次您的客户希望为其网站移动实施JavaScript重定向时,您的答案可能不需要,"请不要."看来这种关系中存在排名信号的转移.谷歌的指导方针引用了这一发现:

"使用JavaScript重定向用户可能是合法的做法.例如,如果您在登录后将用户重定向到内部页面,则可以使用JavaScript执行此操作.检查JavaScript或其他重定向方法以确保您的网站坚持使用根据我们的指导原则,考虑一下意图.请记住,移动网站时301重定向最佳,但如果您无法访问网站的服务器,则可以使用JavaScript重定向."

  • 谢谢您的回答,这正是我发现这个问题时所想知道的。 (6认同)

And*_*NET 8

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

你必须从PHP做301.


Abh*_*ek 6

如果这仅用于 SEO 目的,那么这将起作用
<meta http-equiv="refresh" content="0;url=YOUR_URL">
Google 认为这是 301 重定向,尽管它不是