安装Passenger 方法1
Passenger 是一个 app server,支持基于 Rack 框架的 Ruby app(包括 Rails),作为模块变异到Nginx,不需要自己启动。
安装 Passenger 最简单的方法是通过 apt 安装,首先导入 Passenger 的密钥(官方文档):
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 561F9B9CAC40B2F7
安装 apt 插件以支持 https 传输:
sudo apt-get install apt-transport-https ca-certificates
添加 apt 源(对应 Ubuntu 16.04 LTS)不同系统对应不同的源:
sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger xenial main > /etc/apt/sources.list.d/passenger.list'
sudo apt-get update
安装 Passenger 的包:
sudo apt-get install nginx-extras passenger
修改 nginx 配置,编辑 /etc/nginx/nginx.conf,找到这一行的注释:
include /etc/nginx/passenger.conf;
安装Passenger 方法 2
用编译方式安装 passenger,先安装 passenger 的 gem 包
gem install passenger;
然后用 passenger 安装 nginx
passenger-install-nginx-module
一共 2 条命令全部搞定。安装的过程中会让你选择安装的模块,和安装路径。默认在/opt/nginx, 可以填/etc/nginx, 这样安装好的 nginx 是包含 passenger 的。
# 重启
/etc/nginx/sbin/nginx -s reload
安装后配置nginx
nginx里会自带passenger配置,需要按照自己实际路径去配置
用 which ruby
查看路径
server {
listen 81;
server_name 122.137.242.75;
location / {
root /mnt/workspace/sso_online/public;
passenger_enabled on;
passenger_ruby /usr/local/rubies/2.2.7/bin/ruby;
}
}
这样重启nginx就算启动了,不用再rails s了