Nginx+Mongrel+Rails配置摘要
Confach 发表于 September 10, 2008 4:36 pm
版权信息 :严禁转载, 若想推荐或收藏,请用链接的形式.
网址:http://www.36sign.com/blog/working/nginx_mongrel_rails_deployment.html
Nginx+mongrel+Rails配置的方案很多,在这里只摘抄Nginx的配置文件,然后解释一下
user www www;#用户名和组都为www,前者为用户名,后者为用户组。如果主进程以root来运行,
#nginx使用setuid()/setgid() 。如果没有指定组,nginix使用和用户名相同的组名。worker_processes 10; #worker 进程数
error_log logs/error.log debug; #错误日志文件,debug为级别 ,
#有debug , info , notice ,warn ,error ,crit
pid /var/run/nginx.pid; #nginx的进程位置events {
use epoll;
worker_connections 51200; //worker连接数
}http {
include conf/mime.types;
default_type application/octet-stream;#charset utf-8;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
tcp_nodelay on;
gzip on;
gzip_min_length 1K;
gzip_buffers 48k;
gzip_types text/plain application/x-javascript text/css application/xml;upstream mongrel { #loading balance
server 127.0.0.1:8000;
server 127.0.0.1:8001;
}server { #server配置,可以设置N个
listen 80;
server_name www.domainname.com; #域名或IP你
root /usr/local/depot/public; #根目录
index index.html index.htm; #index文件
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect false;
if (-f $request_filename/index.html) {
rewrite (.*) $1/index.html break;
}
if (-f $request_filename.html) {
rewrite (.*) $1.html break;
}
if (!-f $request_filename) {
proxy_pass http://mongrel;
break;
}
}
error_page 500 502 503 504 /50x.html; #error page#设置location。
location = /50x.html {
root html;
}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 1h;
}
log_format access ‘$remote_addr – $remote_user [$time_local] "$request" ‘
‘$status $body_bytes_sent "$http_referer" ‘
‘"$http_user_agent" $http_x_forwarded_for’;access_log /var/logs/access.log access;
}
}
注:Nginx的文档