首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络技术 > 网络基础 >

调度rails 项目 nginx(apache)+passenger

2012-07-28 
部署rails 项目 nginx(apache)+passenger一 、apache+passenger 1. 安装好 ror 环境bundle exec rake RAILS

部署rails 项目 nginx(apache)+passenger
一 、apache+passenger
1. 安装好 ror 环境
   

    bundle exec rake RAILS_ENV=production db:create    bundle exec rake RAILS_ENV=production db:migrate

2. 安装apache
  
    sudo apt-get install apache2 apache2-mpm-prefork apache2-prefork-dev

3.安装 passenger
 
   sudo gem install passenger   sudo passenger-install-apache2-module

4. 按照提示 编辑 httpd.conf ,并添加如下配置
 
sudo gedit /etc/apache2/httpd.conf 

 
 LoadModule passenger_module /home/dong/.rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.9/ext/apache2/mod_passenger.so   PassengerRoot /home/d/.rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.9   PassengerRuby /home/d  /.rvm/wrappers/ruby-1.9.2-p290/ruby <VirtualHost *:80>      ServerName www.yourhost.com      DocumentRoot /somewhere/public    # <-- be sure to point to 'public'!      <Directory /somewhere/public>         AllowOverride all              # <-- relax Apache security settings         Options -MultiViews            # <-- MultiViews must be turned off      </Directory>   </VirtualHost>

  注释要去掉,才能重启成功
5 .本机而不是服务器调试,记得修改host文件 添加domain
 sudo gedit /etc/hosts  127.0.0.1 www.yourhost.com

6.
sudo /etc/init.d/apache2 restart   brower url type:   http://www.yourhost.com

二 、nginx + passenger 部署rails
1.  安装passenger
 
 gem install passenger  passenger-install-nginx-module

  第二个安装的是nginx,安装nginx的时候 可以用prefix=‘’指定安装的目录。
  装好后,进入nginx目录/sbin/nginx  启动nginx。打开浏览器 输入  http://127.0.0.1  看到提示 说明安装成功
2.配置
  在nginx/conf/nginx.conf 里修改
  
 http {      ...      passenger_root /home/dong/.rvm/gems/ruby-1.9.2-p290/gems/passenger-3.0.9;      passenger_ruby /home/dong/.rvm/wrappers/ruby-1.9.2-p290/ruby;      ...   }  server {      listen 80;      server_name www.yourhost.com;      root /somewhere/public;   # <--- be sure to point to 'public'!      passenger_enabled on;     #rails_env development; nginx的passenger模块默认是生产模式,如果是在本机进行开发   }

3.重启 nginx。输入 http://local  可以访问app1
4.写nginx脚本,启动和nginx的命令比较复杂,写个脚本来简化一下,
 
vi ~/.bashrc  alias sn='sudo /usr/local/nginx/sbin/nginx'   alias kn='sudo kill `cat /usr/local/nginx/logs/nginx.pid `'   alias rn='kn; sn'

5.更多nginx
  nginx 中文维基:  http://blog.chinaunix.net/link.php?url=http://wiki.codemongers.com%2FNginxChs
  Ruby on Rails部署方案:  http://www.cnblogs.com/ToDoToTry/archive/2011/07/27/2118805.html

热点排行