`

部署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
分享到:
评论

相关推荐

    基于C++和多种语言的mod_rails Phusion Passenger设计源码

    本项目是基于C++和多种语言的mod_rails Phusion Passenger设计源码,包含...这个项目是一个旨在从Apache和Nginx网页服务器上更便捷的部署Ruby on Rails项目的Apache模块,旨在简化Ruby on Rails项目的部署和维护过程。

    Ruby-極光Rails5專屬伺服器安裝包

    本安装包“Ruby-極光Rails5專屬伺服器安裝包”就是专为快速部署Rails 5应用程序而设计的,它包含了Nginx 1.10、Passenger 5和Ruby 2.3.1这三个关键组件。 1. **Ruby 2.3.1**: Ruby是一种面向对象的、动态类型的编程...

    passenger-3.0.9本地安装包

    Passenger通常与Apache或Nginx等Web服务器集成。假设我们选择Apache,需要启用mod_rails模块,即Passenger模块。首先,下载Apache的Passenger模块源代码,可以从Passenger的GitHub仓库获取,或者使用gem提供的`...

    Red Hat Enterprise Linux 环境passenger多ruby版本共存部署

    为了在Passenger中支持多个Ruby版本,你需要配置Apache或Nginx来识别每个版本。这里以Apache为例: 1. 安装Passenger模块: ```bash gem install passenger passenger-install-apache2-module ``` 2. 编辑...

    passenger-3.0.11.tar.gz

    Passenger的核心功能是集成Web服务器(如Apache和Nginx)与Ruby应用服务器,使得Rails应用可以无缝地运行在这些服务器上。通过使用Passenger,开发者无需额外配置复杂的服务器环境,简化了部署流程,提高了服务器...

    Ruby on Rails实践

    在部署方面,Rails应用通常运行在如Passenger、Unicorn或Puma这样的服务器上,配合Nginx或Apache作为反向代理。Heroku、DigitalOcean和AWS等云平台为Rails应用提供了便捷的部署选项。 总的来说,Ruby on Rails实践...

    Ansible-ansible-role-passenger.zip

    Phusion Passenger(也称为mod_rails或mod_passenger)是一个Apache和Nginx模块,它允许这两个流行的Web服务器无缝地托管Ruby、Python、Node.js和Go等语言的应用程序。它简化了开发和部署过程,因为它能够直接处理...

    rails web server deploy guide

    7. **配置管理**:使用Nginx或Apache作为反向代理,它们可以将HTTP请求转发到Rails应用的Web服务器。同时,配置SSL证书以提供HTTPS安全连接。 8. **进程管理**:利用工具如Systemd或Upstart管理Rails应用进程,确保...

    ruby on rails在线考试系统

    9. 布署与服务器配置:Rails应用通常部署在如Heroku、AWS或DigitalOcean等云平台上,使用Nginx或Apache作为反向代理,Passenger、Puma或Unicorn作为应用服务器。 10. 性能优化:Rails应用可以通过缓存、数据库索引...

    rails文档API

    在部署方面,Rails支持各种服务器环境,如Apache、Nginx,以及Passenger、Puma和Unicorn等Web服务器。通过Capistrano这样的工具,可以自动化部署过程,使应用上线变得更加便捷。 总的来说,Rails文档API是Ruby on ...

    Rails相关电子书汇总二

    这本书可能会涵盖如何使用Mongrel来服务、部署和扩展Ruby应用程序的细节,包括配置、性能优化、集群设置以及与其他组件(如Nginx或Apache)集成的方法。 Mongrel虽然已经不再是最新的Rails服务器选择,但它在Rails...

    Ruby on rails blog (博客程序)

    在Ubuntu 11.10上,我们可以选择使用Apache或Nginx作为Web服务器,搭配Passenger模块来托管Rails应用。同时,需要确保数据库配置适应生产环境,如使用远程数据库服务。 总结一下,这个“Ruby on Rails博客程序”将...

    Agile Web Development with Rails 4th -Final Edition

    除此之外,书中还涵盖了部署和优化Rails应用的策略,包括如何配置服务器、使用Nginx或Apache作为前端代理,以及如何利用 Passenger、Unicorn 或Puma等Web服务器运行Rails应用。 最后,书中还涉及到了Rails的安全性...

    转载 - 26本 Ruby/Rails 相关英文图书简评

    6. **Rails 部署和配置**:了解如何在生产环境中部署 Rails 应用,包括使用 Capistrano、Heroku 或其他 PaaS 平台,以及 Nginx、Apache、Passenger 等服务器配置。 7. **Rails 开发工具**:如使用 Bundler 管理依赖...

    自己整理的Linux下Redmine安装过程

    8. **启动Redmine**:最后,启动Web服务器(如Apache或Nginx),配置其代理到Redmine的Rails应用,然后就可以通过浏览器访问Redmine了。 在整个过程中,关键知识点包括: - **软件包管理**:使用GCC编译源代码,...

    deprec:deprec的主存储库-capistrano的部署配方

    2.x是对项目的完整重写,可以实现以下目的: 支持Capistrano 2 生成的配置文件存储在本地以启用编辑和版本控制支持更多服务(心跳,nagios,nginx,ntp,postfix等) 多个Rails部署选项(Passenger + Apache,...

    Linux系统平台上安装和配置Ruby on Rails

    在Linux系统上安装和配置Ruby on Rails是一个...不过,生产环境中通常会使用更强大的Web服务器如Nginx或Apache,并结合 Passenger 或 Puma 进行部署,以提供更高的性能和稳定性。记得根据实际需求调整配置和优化性能。

    Passenger

    Passenger,又名ModRails或Phusion Passenger,是一个开源的Web服务器模块,主要设计用于Apache和Nginx,用于管理和运行基于Ruby的Web应用程序,特别是Ruby on Rails框架。它提供了一个高效且易于使用的平台,使得...

    Rails

    在部署方面,Rails应用通常配合Passenger、Unicorn或Puma等Web服务器运行在Nginx或Apache之上。Docker和Heroku等平台提供了便捷的Rails应用部署方案。 Rails还积极拥抱最新技术,例如,Action Cable支持WebSockets...

Global site tag (gtag.js) - Google Analytics