原生的nginx服务器并不满足rails部署的条件,因此需要使用passenger改写过的nginx.
ps:
- rails接受请求的模型是一个进程处理一个请求,单个进程效率比较低,一般需要开启多个进程
- passenger是Rails应用服务管理工具,可以统一管理rails进程的数量,生命周期,请求队列等等
- nginx是一个高性能的web服务器,由于nginx处理链接和静态资源的能力很强,所以一般在rails之前放上nginx接受客户端请求
- 其关系如下图
安装passernger,由于nginx不支持动态的模块载入,所以要使用passenger来进行编译安装由passenger修改过的nginx
#安装passenger gem install passenger #接下来安装nginx passenger-install-nginx-module #ps:记得在安装过程中选择1,即完整安装
3.安装完成后系统会提示,nginx安装的目录,在centos7下默认是安装在/opt/nginx下,配置文件是默认在/opt/nginx/conf/nginx.conf
4.配置nginx(最重要的部分)
sudo nano /opt/nginx/conf/nginx.conf
{ worker_processes 1; events { worker_connections 1024; } http { #这里是由passenger自己设置的 passenger_r
Rails+nginx服务器部署
本文介绍了如何使用Passenger改写过的Nginx服务器来部署Rails应用。Rails通常需要多进程处理请求,而Passenger作为一个Rails应用管理工具,能有效管理进程并优化性能。Nginx作为高性能的Web服务器,负责处理静态资源和客户端请求。在CentOS7中,Passenger编译安装后,需配置nginx.conf文件,然后通过命令启动Nginx以访问应用。
摘要由CSDN通过智能技术生成