代码之家  ›  专栏  ›  技术社区  ›  Matt Rogish

rails/passenger/apache:简单的一次性URL重定向,以便在服务器移动后捕获过时的DNS

  •  0
  • Matt Rogish  · 技术社区  · 15 年前

    我的一个Rails应用程序(使用passenger和apache)正在更改服务器主机。我已经在两台服务器上运行了这个应用程序(新的服务器正在测试中)和5分钟的DNS TTL。一位同事告诉我(我自己也经历过类似的事情),有时候DNS解析程序会稍微忽略TTL,在我将DNS更新到新服务器之后,可能会将旧IP缓存一段时间。

    所以,在我打开DNS的开关之后,我想做的是对旧服务器进行黑客攻击,为所有访问者强制重定向到新服务器的IP地址。显然,我可以在Apache或应用程序本身中执行许多重定向(301302)。我想避免使用app方法,因为我不想只为这个实例执行代码的签入和部署,所以我认为基本的HTTP URL重定向可以工作。buuttt,有搜索引擎优化的含义,应该谷歌访问老网站等。

    在保持搜索引擎的良好性的同时,如何最好地实现重定向?

    3 回复  |  直到 14 年前
        1
  •  1
  •   Eric Petroelje    15 年前

    我想问题是-你会转向哪里?如果您要重定向到域名,浏览器(或bot)只会得到相同的旧IP地址,并最终进入重定向循环。

    如果重定向到IP地址..嗯,在某人的浏览器中,这看起来不太友好。

    就我个人而言,我什么都不会做。在短时间内,机器人程序在试图访问你的站点时可能会出错,但在几天内,所有的问题都会解决,不会造成任何“SEO损坏”。

        2
  •  0
  •   RDK    15 年前

    一种解决方案可能是使用mod_proxy而不是重写来代理到新主机的流量。这样你就不会看到任何“SEO损伤”。

        3
  •  0
  •   kpi    14 年前

    我使用rinetd将IP流量从旧服务器重定向到IP级别的新服务器。不需要配置Web服务器或虚拟主机。运行非常顺利,对任何客户都绝对透明。