Edd*_*die 21 subdomain wordpress ruby-on-rails heroku subdirectory
我正在构建一个rails应用程序,我将在domain.com上的Heroku上托管.我想将WordPress用于phpfog上托管的博客,但我不想使用像blog.domain.com这样的子域名.我宁愿使用像domain.com/blog这样的子目录
它不是关于SEO ......我只是不喜欢子域名.子目录更性感(是的......我实际上是这么说的).
关于如何可靠地实现这一目标的任何想法?在此先感谢您的帮助.
小智 19
您可以使用neezer发现的rack-reverse-proxy gem来执行此操作.首先,您需要添加gem "rack-reverse-proxy", :require => "rack/reverse_proxy"
到Gemfile并运行bundle install
.接下来,您将修改您config.ru
的/blog/
路线以转发到您想要的博客:
require ::File.expand_path('../config/environment', __FILE__)
use Rack::ReverseProxy do
reverse_proxy /^\/blog(\/.*)$/, 'http://notch.tumblr.com$1', opts={:preserve_host => true}
end
run YourAppName::Application
Run Code Online (Sandbox Code Playgroud)
您可能已经有了第一个require语句和run YourAppName...
语句.有一些重要的细节使这项工作.
首先,当您添加所需的博客URL时,您无法在其上保留尾随斜杠.如果你这样做,当有人请求时http://yourdomain.com/blog/
,gem会将它们转发给http://you.yourbloghost.com//
额外的斜杠.
其次,如果:preserve_host
未启用该选项,您的博客托管服务器将查看该请求http://yourdomain.com/blog/
而不是as http://you.yourbloghost.com
,并将返回错误结果.
如果博客使用,您仍可能遇到CSS或图像问题/absolute/paths/to/images/
.
我想说你最好的选择是尝试使用 Rack 中间件(类似于 Apache 的mod_proxy
)进行反向代理。
快速的 Google 搜索发现了这个 gem ( https://github.com/jaswope/rack-reverse-proxy ),但作者提到它可能还没有准备好生产。拥有 Rack 中间件代理应该允许您将子域转发yourdomain.com/blog
到另一个网站your-phpfog-account.com/wordpress-installation
。
归档时间: |
|
查看次数: |
4832 次 |
最近记录: |