仅使用客户端代码检测301重定向

时间:2014-03-24 23:48:43

标签: javascript redirect http-status-code-301

我有一个不再使用的网站,因为产品不再开发。该网站将使用301重定向来指导对新产品网站的任何访问。

我想要的是向首次访问旧网站以解释产品名称更改但向仅首先访问旧网站的用户展示div

这是否可以仅使用 javascript?我read关于使用PHP的可能解决方案,但我又需要一个只有JS的解决方案,如果可能的话。

注意:我在网站上使用jQuery 2.1,因此jQuery解决方案很好。

2 个答案:

答案 0 :(得分:2)

我想,不,

  

透明地遵循重定向

w3:xhr

答案 1 :(得分:2)

这是不可能的。如果您返回301,则浏览器会关注它,并且不会显示您可能发送的任何HTML。

或者,您可以返回200以及以下内容:

<div>The new site is at newsite.com</div>
<script type="text/javascript">
setTimeout(function() { window.location('newsite.com'); }, 60 * 1000);
</script> 

这会显示div并重定向用户(60秒后),但不会通知搜索引擎内容已移至新网站。

你可以(稍微)用rel="canonical"来缓解SEO困境,但Google等人。建议不要这样做(你的情况就是301的内容,rel="canonical说&#34;这个内容有两个版本,只在这里索引一个版本):

<head>
  <link rel="canonical" href="newsite.com">
</head>
<body>
  <div>The new site is at newsite.com</div>
  <script type="text/javascript">
  setTimeout(function() { window.location('newsite.com'); }, 60 * 1000);
  </script>
</body>