【问题标题】:Need to link WP Blog with Rails App on Heroku需要将 WP 博客与 Heroku 上的 Rails 应用程序链接
【发布时间】:2011-07-05 02:04:22
【问题描述】:

我有一个客户想将他的 Rails 应用程序迁移到 Heroku。然而,客户还有一个与他的域相关联的博客,该博客在 WordPress 上运行。目前,WordPress 博客与 Rails 应用程序一起运行良好,但一旦我们迁移到 Heroku,这显然是不可能的。

应用程序的网址如http://mydomain.com,博客的网址如http://mydomain/blog

我意识到最好的长期解决方案是以像 Toto 或 Jekyll 这样的 Rails 格式重做博客。但在短期内,继续托管 WP 博客的最佳方式是什么?客户不希望博客位于子域上,而是出于 SEO 原因而留在 mydomain/blog 上,并且还因为博客有流量。我有两个想法:

  1. 在旧(非 Heroku)服务器上使用 rack_rewrite 或 refraction(或只是一个普通的旧 301 和 Apache mod_rewrite)将主 url 从旧​​站点重定向到 Heroku。在这种情况下,我可以让 Wordpress 博客在原处愉快地运行。我想??如果我这样做,是否有理由选择其中一个选项(rack_rewrite、refraction 或 mod_rewrite)而不是其他选项?

  2. 切换 DNS 信息以指向 Heroku 站点,然后使用从博客到旧站点的 301 重定向。但是我必须在子域上获取旧的(非 Heroku)站点并使用某种重写规则,所以它看起来不是子域。

这两种方法中的哪一种更可取,还是有另一种我想念的更容易的方法?

【问题讨论】:

  • 用 Ruby 写一个 PHP 实现怎么样?
  • @John,我也有同样的情况。您是否听从了 Willfield 的建议或找到了其他解决方案?
  • @Dorian,我最后只是说服客户这是一个坏主意,所以我想我确实听从了 Winfield 的建议。

标签: ruby-on-rails mod-rewrite heroku rack-rewrite


【解决方案1】:

唯一可行的长期/可扩展解决方案是将博客永久托管在子域或不同域上,并添加从 mydomain.com/blog 到新位置的重定向(即:blog.mydomain.com)。

您需要在 mydomain.com 上运行 Apache/nginx 等前端的单个服务器来提供 Rails 和 Wordpress 等混合后端,而这在 Heroku 上是不可能的。

可悲的是,这是您作为顾问需要深入研究的地方,并与您的客户一起严厉对待技术限制。

您的客户为什么要迁移到 Heroku?是否有更大的目标可以通过不同的托管来实现,您可以控制前端并可以混合不同的后端?

【讨论】:

  • 出于 seo 的原因,最好将博客存储在 /blog 而不是子域中
【解决方案2】:

另一种解决方案是将heroku 设置为http://app.example.com,将Wordpress 设置为http://example.com。您将您的 Wordpress 登录页面放在根目录中,并将博客放在 /blog 上。当用户在登录页面上单击“登录”或“注册”时,他们将链接到 heroku-app。

从 SEO 角度来看,这将是最佳选择,但需要一些 DNS 知识。

【讨论】:

    【解决方案3】:

    温菲尔德的回答不正确。您可以在机架服务器上运行反向代理(通过 Heroku),以直接访问博客,无论它在哪里。

    https://github.com/jaswope/rack-reverse-proxy

    根据文档安装 gem 并设置应用程序后,您的 ./config.ru 文件将具有以下内容:

    use Rack::ReverseProxy do
      reverse_proxy(/^\/blog(\/.*)$/,
        'http://<app-name>.herokuapp.com$1',
        opts = {:preserve_host => true})
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-12
      • 1970-01-01
      • 2013-08-03
      • 2016-02-01
      • 1970-01-01
      • 2011-11-20
      • 2013-05-15
      • 2013-03-22
      相关资源
      最近更新 更多