??xml version="1.0" encoding="utf-8" standalone="yes"?> Phusion Passenger模块使得Rails应用可以像PHP模块一栯行在Apache上,非常方便?/span> LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7/ext/apache2/mod_passenger.so 解释一下过E大致是先创Z个硬链接Q如下:(x) 最后四句带#注释说明是重点,应用RailsBaseURI命o(h)把rails子URI指定到rails的应用目录,而rails目录是我们上面链接的目录,而实际上?x)蟩到我们的直接redmine目录?/p>
准备条gQCentOS服务器已l装好了Apache2.2和Redmine应用
1. 安装Passenger模块
gem install passenger
passenger-install-apache2-module
W二个命令是安装passenger的apache2模块Q它已经做得很智能,?x)提CZ认安装以及(qing)最后怎么配置模块到apache中?/span>
摘出配置D늚内容如下Q?/span>
Please edit your Apache configuration file, and add these lines:
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.7
PassengerRuby /usr/bin/ruby
把红色字体部分拷贝到apache的配|文Ӟ可以是主配置文g/etc/httpd/conf/httpd.confQ也可以是在/etc/httpd/conf.d/目录下新Z个子文g命名为ruby.confQ推荐第二种方式Q更为简z,不会(x)影响L件的配置?/span>
2. 先测试一下passenger是否安装正常
切换到redmine的安装目录下Qpassenger start 命o(h)试一下是否正常能以paasenger方式启动Q如果没有异常,恭喜Q已l安装完成,剩下的工作就是配|一个虚拟主机和子给你的redmineQ这样可以{到更为常用的80端口上?/span>
3. 配置rails应用做ؓ(f)sub URI模式
在passenger的官Ҏ(gu)中其实有好几种配置的方式,可以是域名、域名子URI{,很多时候你可能只有一个域名,那么利用sub URI来挂不同的应用就昑־比较
首先配置一D虚拟主机如下:(x) <VirtualHost *:80>
ServerName www.phusion.nl
DocumentRoot /websites/phusion
<Directory /websites/phusion>
Allow from all
</Directory>
</VirtualHost>
ln -s /webapps/mycook/public /websites/phusion/rails
/webapps/mycook/public是你的rails的应用目录下面的public目录Q例如你的redmine安装?var/www/htmlQ这个目录就?br /> /var/www/html/redmine/publicQ后面就是你Apacheȝ录下的创建的一个链接地址railsQ意思就是把/var/www/html/redmine/public
链接?var/www/html/railsQ?var/www/html/rails是实际上不存在的?br /> 然后再配|子目录如下Q?/pre>
<VirtualHost *:80>
ServerName www.phusion.nl
DocumentRoot /websites/phusion
<Directory /websites/phusion>
Allow from all
</Directory>
RailsBaseURI /rails # <-- These lines have
<Directory /websites/phusion/rails> # <-- been added.
Options -MultiViews # <--
</Directory> # <--
</VirtualHost>