Rails应用程序在子目录中
尝试在子目录中设置Rails应用程序。 我的服务器是切诺基。 我有一个基本url:www.nonsense.com,这是一个wordpress博客,我希望在www.nonsense.com/rails_app中设置一个rails应用程序。
快速浏览谷歌让我使用:ActionController :: AbstractRequest.relative_url_root =“/ rails_app”
但是,它似乎已在最新的Rails中删除。 关于Rails 2.3.8中的等价物的任何想法?
对于Rails 4/5,您可以在application.rb
或production.rb
:
config.relative_url_root = "/app1"
或者只需设置此环境变量:
RAILS_RELATIVE_URL_ROOT='/app1'
但是,我发现这只是资产路径的前缀。 url帮助程序创建的URL路径不遵循此设置。
事实certificate,有一个与此相关的错误: https : //github.com/rails/rails/issues/5122
这应该是修复它,但我没有发现情况: https : //github.com/rails/rails/pull/18775/files
该function的文档不清楚它应该如何工作:
http://edgeguides.rubyonrails.org/configuring.html#deploy-to-a-subdirectory-relative-url-root
也许尝试命名空间:
http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing
这个答案可能也有帮助:
在Apache下的子目录中配置Rails 4应用程序以进行生产
您想立即在环境文件中使用它:
config.action_controller.relative_url_root = '/rails_app'
资料来源: http : //edgeguides.rubyonrails.org/configuring.html