博客重定向到Heroku应用程序中的目录不适用于博客帖子网址

时间:2018-01-12 13:05:17

标签: ruby-on-rails wordpress heroku

我关注this tutorial,以便将托管在子域名(blog.botletter.com)上的博客重定向到我的Heroku rails应用程序(https://www.botletter.com/blog/)的目录。

重定向适用于博客主页(/ blog /),但不适用于文章网址。

我想这是Rails应用程序中的配置问题,但我找不到错误。这是Heroku中的日志:

  

at = info method = GET path =“/ blog / invite-team-members /”   host = www.botletter.com request_id = 23b81c9a-e20b-4261-aea4-87adfb781554   fwd =“195.154.32.17”dyno = web.1 connect = 0ms service = 412ms status = 500   bytes = 725 protocol = https

这是我的config.ru文件(由于博客没有使用任何访问限制,我不使用教程中的用户名和密码):

require_relative 'config/environment'

use Rack::ReverseProxy do
  reverse_proxy /^\/blog(\/.*)$/, 'https://blog.botletter.com$1', :timeout => 500, :preserve_host => true
end

run Rails.application

我的路线:

get '/blog' => redirect("https://www.botletter.com/blog/")
get '(*path)', to: 'application#blog', constraints: { subdomain: 'blog' }

应用程序控制器中的“博客”操作:

def blog
    redirect_to "https://www.botletter.com/blog#{request.fullpath.gsub('/blog','')}", :status => :moved_permanently
  end

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

  

at = info method = GET path =" / blog / invite-team-members /"主机= www.botletter.com

我看到子域名为www

  

获取'(*路径)'到:'应用程序#blog',约束:{subdomain:   '博客' }

您已将子域重新绑定为blog,因此您需要将子域添加到博客的路径中。