浅析Ruby on Rails部署方案

http://blog.csdn.net/jrckkyy/article/details/2501136

http://binku.iteye.com/blog/483687

apache+passenger部署rails应用

(1)安装apache:sudoapt-getinstallapache2

(2)安装passenger

$sudogeminstallpassenger

$passenger-install-apache2-module

安装到最後时,会出现如下的3条语句:

LoadModulepassenger_module/usr/lib/ruby/gems/1.8/gems/passenger-2.2.2/ext/apache2/mod_passenger.so

PassengerRoot/usr/lib/ruby/gems/1.8/gems/passenger-2.2.2

PassengerRuby/usr/bin/ruby1.8

把三条语句复制到/etc/apache2/apache2.conf的最后

(3)在/etc/apache2/sites-available下面创建available的应用配置

$sudotouch/etc/apache2/sites-available/rails-app

打开rails-app,加入以下语句:

<VirtualHost*:80>

#RailsEnvdevelopment加上这句的话,以development的模式部署

ServerNamebinku.com

DocumentRoot/home/binku/programme/rails-app/public

</VirtualHost>

(4)创建软链接,把available的应用程序配置链接到/etc/apache2/sites-enabled下面,apache将读取该文件夹下的配置.

$sudoln-s/etc/apache2/sites-available/rails-app/etc/apache2/sites-enabled/rails-app

(5)如果要设置虚拟主机的ip可以修改/etc/hosts,加上

127.0.0.1localhost

172.17.21.119binku.com

(6)如果以production模式部署的话,要记得创建production的数据库

$rakedb:createRAILS_ENV=production

$rakedb:migrationRAILS_ENV=production

(7)重启apache:sudo/etc/init.d/apache2restart,现在就可以在浏览器访问rails应用了.

重启apache前可以打开error日志看看启动有没有出错:tail-f/var/log/apache2/error.log

(8)修改完程序后,如果要重新部署可以输入:

touchrails-app/tmp/restart.txt

相关推荐