如何在CentOS 6上使用Ruby on Rails + Passenger以及其他服务(如phpmyadmin / bugzilla)

时间:2012-08-21 04:06:55

标签: ruby-on-rails apache passenger

我的要求是访问我的ROR项目的 http:// myhost / ,并使用 http:// myhost / phpmyadmin / 访问phpmyadmin和bugzilla HTTP://为myhost / bugzilla的/

我想知道如何配置我的VirtualHost和DocumentRoot,感谢您的评论!

/etc/httpd/conf/httpd.conf

的内容
LoadModule passenger_module /usr/lib/ruby/gems/1.9.1/gems/passenger-3.0.14/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.9.1/gems/passenger-3.0.14
PassengerRuby /usr/bin/ruby
.....
.....

<VirtualHost *:80>
  ServerName myhost
  DocumentRoot /var/www/html/myProject/public
  RailsEnv development
  <Directory /var/www/html/myProject/public>
    AllowOverride All
    Options -MultiViews
  </Directory>
</VirtualHost>

2 个答案:

答案 0 :(得分:13)

在挖掘乘客文件后,我发现有一种简单的方法可以做到这一点

<VirtualHost *:80>
  ServerName myhost
  DocumentRoot /var/www/html/myProject/public
  RailsEnv development
  <Directory /var/www/html/myProject/public>
    AllowOverride All
    Options -MultiViews
  </Directory>
  Alias /blog /var/www/html/phpmyadmin
  <Location /phpmyadmin>
    PassengerEnabled off
  </Location>
</VirtualHost>

这将强制Passenger跳过路径/ phpmyadmin

下的请求

答案 1 :(得分:0)

最简单的方法,最少的头痛只是为phpmyadmin和bugzilla创建子域名。然后,为每个子域创建一个新的virutalhost。

但是,如果您的设置是必要的,这似乎是我可能的解决方案。

http://macdiggs.com/2007/06/29/using-php-inside-rails-structure-on-apache/