当前位置:  开发笔记 > 后端 > 正文

在Apache下的子目录中配置Ruby On Rails App

如何解决《在Apache下的子目录中配置RubyOnRailsApp》经验,为你挑选了1个好方法。

我在windows上有apache2.2.我正在尝试同时提供subversion(/ svn)和redmine(/ redmine).我用这个配置运行svn很好:


  DAV svn
  SVNParentPath C:/svn_repository
  ...

这很好用 - 我的svn用户可以点击http:// mybox/svn就好了.

现在我想为rails app(RedMine)添加另一个目录:

我按照这个问题中的建议来设置一个mongrel服务器并让apache代理客户端通过它.如果我把它作为根目录,它可以正常工作 - 但是我在子目录中制作它时遇到了麻烦:


  ProxyPass http://localhost:3000/
  ProxyPassReverse http://localhost:3000/

有什么建议?



1> Michael Hare..:

这是我必须改变的:

我删除了斜杠:


  ProxyPass http://localhost:3000
  ProxyPassReverse http://localhost:3000/

在我的rails应用程序中:

# added to end of file C:\redmine\config\environment.rb
ActionController::AbstractRequest.relative_url_root = "/redmine"

现在它正在运作!


我对这种方法并不完全满意 - 我遇到了一些重定向问题.这是迄今为止似乎运作良好的另一种尝试.

没有VirtualHosts的快速CGI和快速CGI

调整快速CGI

第二种方法似乎更好.


更新:

正如评论中所述,对于在Rails 2.3.2+上运行的最新应用程序,请使用以下代码:

config.action_controller.relative_url_root = '/redmine'

我把它放在新additional_environment.rb文件中.


它实际上是自Rails 2.3.x以来的ActionController :: Base.relative_url_root
推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有