最近网上有很多人在推荐使用nginx+mongerl来搭建了rails的生产环境,今天研究了一下。
在ubuntu上安装nginx比较简单 sudo apt-get install nginx 就可以了,如果要安装最新的版本可以去nginx的官方网站上去下载。
ubuntu上搭建rails的已经存在ubuntu的源库中,只要使用apt-get install rails 但是安装的不是最新的的版本。在gem install 分别安装 mongel 和Mongrel_cluster。
假如你的rails工程放在/var/www/myapp/下
adduser mongrel
cd /var/www/myapp
rails test
cd test
mongrel_rails start
chown -R mongrel:mongrel /var/www/myapp/test
以上命令多是root用户
访问一下http://localhost:3000 看一下你的mongrel是否能启动 能启动,则继续搭建mongerl的集群,
sudo mongrel_rails cluster::configure -e production
\-p 8000 -N 3 -c /var/www/myapp/test -a 127.0.0.1
\ --user mongrel --group mongrel
这样会在test工程下生成一个config/mongrel_cluster.yml 这样一个配置文件。记录了相关的配置信息。
mongrel_rails cluster::start
就可以把起来了三个mongrel进程。
你也可以把mongrel_rails 作为系统服务
$ sudo mkdir /etc/mongrel_cluster
$ sudo cp /var/www/myapp/test/config/mongrel_cluster.yml \
/etc/mongrel_cluster/testapp.yml
$ sudo cp \
/path/to/mongrel_cluster_gem/resources/mongrel_cluster/mongrel_rails \
/etc/init.d/
$ sudo chmod +x /etc/init.d/mongrel_cluster
你就可以在/etc/init.d/mongrel_cluster start 来启动这个mongrel的集群
接下来配置nginx 他的配置文件比较简单/etc/nginx/nginx.conf
下面可以帖一个简单的配置文件
user mongrel;
worker_processes 1;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
upstream mongrel {
server 127.0.0.1:8000;
server 127.0.0.1:8001;
server 127.0.0.1:8002;
}
gzip on;
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/localhost.access.log;
location / {
root /var/www/myapp/test/public;
index index.html index.htm;
}
location / {
proxy_pass http://mongrel;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov)$ {
root /var/www/myapp/test/public;
}
}
}
在nginx重启一下 访问一下http://localhost 一个简单的rails的生产环境就搭建完成了
分享到:
相关推荐
FFmpeg+nginx+rtmp搭建环境实现推流 FFmpeg、nginx、rtmp三者结合可以实现一个强大且高效的流媒体服务器,下面是它们的详细介绍和搭建过程。 FFmpeg FFmpeg是一款功能强大的开源命令行工具,能够处理视频和音频...
Win+Nginx+PHP+MySQL 环境搭建 Win+Nginx+PHP+MySQL 环境搭建是指在 Windows 操作系统上安装和配置 Nginx、PHP、MySQL 等组件,以便搭建一个完整的 Web 服务器环境。该环境搭建主要涉及到 Nginx、PHP、MySQL 三个...
### Web环境搭建:Linux+Nginx+PHP+MySQL+Redis #### 一、环境概述与推荐版本 在构建一个高效且稳定的商城系统时,选择合适的Web环境至关重要。本指南将介绍一套广泛应用于电商平台的技术栈——**Ubuntu + PHP + ...
二、部署调度器—搭建Nginx+Keepalived(双机热备) 在调度器服务器上,需要安装Nginx和Keepalived软件包。首先,需要安装编译工具和插件,然后添加nginx用户和组,解压Nginx安装包,编译和安装Nginx。接着,需要...
Nginx+Uwsgi+Django(python3)+Vue部署,一步步实现。网上找了N多篇文章都没成功,特意记录,以免其他同学踩坑
本文档旨在指导用户如何配置 Linux+Nginx+PHP+MySQL 环境,以便搭建一个功能齐全的 Web 服务器。下面是详细的配置步骤: 一、安装 Red Hat Linux 首先,需要安装 Red Hat Linux 操作系统。安装过程中,选择中文...
"Idea OpenResty + Nginx + Lua" 的组合提供了一种强大的解决方案,它允许开发者利用 IntelliJ IDEA(Idea)作为集成开发环境,OpenResty(一个扩展了 Nginx 的版本)作为服务器平台,以及 Lua 语言进行高性能的脚本...
ffmpeg+nginx+nginx-rtmp-module搭建个人直播平台。 使用说明(ffmpeg+nginx+rtmp-module已经整合,支持HTTP,具体配置查看conf/nginx.conf): 1.解压后,运行nginx_start.bat。(查看监控状态 ...
CentOS7 自动化搭建Nginx+PHP7+Mysql+Docker+Docker-Compose Shell脚本,Docker version 18.06.1-ce,docker-compose version 1.22.0
【Nginx+Keepalived+Tomcat集群搭建】是一个实现服务器高可用和负载均衡的常见方案,旨在解决单点故障问题,防止服务因一台服务器宕机而导致整个系统的崩溃,即所谓的雪崩效应。 首先,我们需要四台服务器,两台...
配置Nginx+Tomcat+Redis环境时,可能会用到各种依赖包,如编译工具、库文件、配置脚本等。这些包确保所有组件能够正常安装和运行。 综上,"Nginx+Tomcat+Redis"的架构为构建高可用、高性能的Web服务提供了坚实的...
OpenBSD+Nginx+MySQL+PHP环境搭建手册[第二版][汇编].pdf
在构建高效的Web生产环境时,通常会考虑使用多种服务器软件来优化不同的工作负载。Nginx和Apache就是这样的两个常用工具。Nginx以其高性能、轻量级的特性,擅长处理静态内容和作为反向代理,而Apache则以其强大的...
总结来说,Linux下php+nginx+mysql环境的搭建是一个系统性工程,需要系统地学习相关的技术知识,耐心细致地完成每一步操作。对于初学者来说,建议在Windows系统下使用VMware虚拟机进行实践,以加深理解。对于经验...
在构建高性能、高可用性的Web服务时,"Nginx+Tomcat+Redis"的组合是一种常见的架构模式。这个架构利用Nginx作为反向代理和负载均衡器,Tomcat作为Java应用服务器处理业务逻辑,而Redis则用作缓存系统以提升数据访问...
超详细Nginx+Tomcat+Redis搭建高性能负载均衡集群Session共享搭建说明,按文档步骤可轻松搭建并实现session共享
nginx+tomcat+redis集群部署环境,包括nginx tomcat redis及集群部署所需jar包,jedis-2.6.1.jar,commons-pool2-2.2.jar,tomcat-redis-session-manager1.2.jar 具体步骤可以参见我的博文
keepalived+Nginx+Tomcat 集群搭建** 在高并发场景中,仅靠单台 Nginx 可能不足以应对,这时可以结合 keepalived 实现高可用和负载均衡。Keepalived 提供 VRRP 协议来监控 Nginx 主备节点状态,当主节点故障时,...
Nginx + uwsgi + web.py 搭建web服务器, 也包含一整套python服务器后台框架代码,简单方便,容易搭建。