我正在尝试重写:
mysite.com/blog到blog.mysite.com
明确一点:我只希望用户看到mysite.com/blog。博客实际上是一个单独托管的 wordpress 网站,位于 blog.mysite.com。mysite.com 是一个 Rails 应用程序。
我试图使用rack-rewrite来实现这一点,我可以使它与 301 重定向一起工作,但不能与重写一起工作。
config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do
#r301 '/blog', 'http://blog.mysite.com' #works
rewrite '/blog', 'http://blog.mysite.com' #fails
end
我尝试在 Rails 中而不是在网络服务器中执行此操作的原因是因为我使用 Heroku 进行托管,并且我相信不可能在 Heroku 上配置这种类型的重写。
所以我的问题很简单,我怎样才能实现这种重写?
ps 我看到另一个帖子建议使用rack-reverse-proxy,但是这个 gem 似乎很老,似乎没有太多的发展。这让我对使用它感到紧张。