【问题标题】:Detecting a 301 Redirect using Client Side Code Only仅使用客户端代码检测 301 重定向
【发布时间】:2014-05-02 14:29:44
【问题描述】:

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

我想做的是向第一次访问旧网站的任何人显示div,以解释产品名称更改,但仅限于首先访问旧网站的人。

这可能使用 only javascript 吗?我read 关于使用 PHP 的可能解决方案,但如果可能的话,我再次需要一个仅 JS 的解决方案。

注意:我在网站上使用的是 jQuery 2.1,所以 jQuery 解决方案很好。

【问题讨论】:

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


    【解决方案1】:

    这是不可能的。如果您返回 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 说“此内容有两个版本,仅在此处索引一个):

    <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>
    

    【讨论】:

    • 我害怕那个。感谢您的帮助和回答。
    【解决方案2】:

    我想,没有:

    透明地跟随重定向

    w3:xhr

    【讨论】:

      猜你喜欢
      • 2019-12-06
      • 1970-01-01
      • 2013-01-19
      • 2012-09-28
      • 1970-01-01
      • 2015-10-12
      • 2012-11-26
      • 2011-02-04
      • 1970-01-01
      相关资源
      最近更新 更多