Ruby on rails 使现有WordPress博客成为Rails应用程序的子目录?

Ruby on rails 使现有WordPress博客成为Rails应用程序的子目录?,ruby-on-rails,wordpress,ruby-on-rails-3,Ruby On Rails,Wordpress,Ruby On Rails 3,我在Heroku上有一个Rails应用程序,在GoDaddy上有一个单独的WordPress博客。如何将RailsApp.com/blog路由到WordPress,同时将其作为应用程序的子目录进行维护?Rails配置 添加到文件: gem "rack-reverse-proxy", :require => "rack/reverse_proxy" 现在我们希望从Rails应用程序将/blog和/blog/定向到Wordpress实例 在运行应用程序之前,将其添加到config.ru: u

我在Heroku上有一个Rails应用程序,在GoDaddy上有一个单独的WordPress博客。如何将RailsApp.com/blog路由到WordPress,同时将其作为应用程序的子目录进行维护?

Rails配置

添加到文件:

gem "rack-reverse-proxy", :require => "rack/reverse_proxy"
现在我们希望从Rails应用程序将/blog和/blog/定向到Wordpress实例

在运行应用程序之前,将其添加到config.ru:

use Rack::ReverseProxy do
  reverse_proxy(/^\/blog(\/.*)$/,
    'http://CHANGEME.herokuapp.com$1',
    opts = {:preserve_host => true})
end
在config/routes.rb中添加路由:

match "/blog" => redirect("/blog/")
对于Rails3.1+(+Rails4),应遵循以下步骤: 首先,将gem机架代理添加到Gemfile

gem“机架代理”

然后将proxy.rb文件添加到Rails.root/lib中,如下所示:

需要“机架/代理”
类代理
将此行添加到php文件wp-config.php中:

define('WP_HOME', 'http://tinle1201.wordpressdomain.com/blog');

我非常了解这篇文章,尽管它适用于基于heroku的WordPress。这是我目前尝试的解决方案的一部分,我可以让博客显示在正确的子目录中,但是当你单击博客上的任何内容时,它会切换到博客的域。为了解决这个问题,我将wordpress上的网址URL改为mywebsite.com/blog,并添加了rewritebase/blog/to.htaccess。这对于开箱即用的wordpress非常有效,因为文章是用扩展名组织的,比如/?p=1,这将转到第一篇文章。我正在尝试使用的经过大量修改的博客有类似blogurl.com/name-of-article的帖子,出于某种原因,当我尝试相同的解决方案时,从主页点击帖子会将我带到网站的根目录,而不是访问帖子,即“rack reverse proxy”不适用于生产系统。最好使用您的Web服务器(如Nginx或Apache)在生产环境中配置代理传递设置。