+ -
当前位置:首页 → 问答吧 → nginx详细配置说明

nginx详细配置说明

时间:2009-05-20

来源:互联网



#运行用户
user  nobody nobody;
#启动进程
worker_processes  2;
#全局错误日志及PID文件
error_log  logs/error.log notice;
pid        logs/nginx.pid;
#工作模式及连接数上限
events{use epoll;
worker_connections      1024;}#设定http服务器,利用它的反向代理功能提供负载均衡支持
http{#设定mime类型
include      conf/mime.types;
default_type  application/octet-stream;
#设定日志格式
log_format main'$remote_addr - $remote_user [$time_local] ''"$request" $status $bytes_sent ''"$http_referer" "$http_user_agent" ''"$gzip_ratio"';
log_format download'$remote_addr - $remote_user [$time_local] ''"$request" $status $bytes_sent ''"$http_referer" "$http_user_agent" ''"$http_range" "$sent_http_content_range"';
#设定请求缓冲
client_header_buffer_size    1k;
large_client_header_buffers  4 4k;
#开启gzip模块
gzip on;
gzip_min_length  1100;
gzip_buffers    4 8k;
gzip_types      text/plain;
output_buffers  1 32k;
postpone_output  1460;
#设定access log
access_log  logs/access.log  main;
client_header_timeout  3m;
client_body_timeout    3m;
send_timeout          3m;
sendfile                on;
tcp_nopush              on;
tcp_nodelay            on;
keepalive_timeout  65;
#设定负载均衡的服务器列表
upstream mysvr{#weigth参数表示权值,权值越高被分配到的几率越大
#本机上的Squid开启3128端口
server 192.168.8.1:3128 weight=5;
server 192.168.8.2:80  weight=1;
server 192.168.8.3:80  weight=6;}#设定虚拟主机
server{listen          80;
server_name    192.168.8.1 www.okpython.com;
charset gb2312;
#设定本虚拟主机的访问日志
access_log  logs/www.yejr.com.access.log  main;
#如果访问 /img/*, /js/*, /css/* 资源,则直接取本地文件,不通过squid
#如果这些文件较多,不推荐这种方式,因为通过squid的缓存效果更好
location ~ ^/(img|js|css)/  {
root    /data3/Html;
expires 24h;
}
#对 "/" 启用负载均衡
location / {
proxy_pass      http://mysvr;
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;
client_max_body_size    10m;
client_body_buffer_size 128k;
proxy_connect_timeout  90;
proxy_send_timeout      90;
proxy_read_timeout      90;
proxy_buffer_size      4k;
proxy_buffers          4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
#设定查看Nginx状态的地址
location /NginxStatus {
stub_status            on;
access_log              on;
auth_basic              "NginxStatus";
auth_basic_user_file  conf/htpasswd;
}
}
}

备注:conf/htpasswd 文件的内容用 apache 提供的 htpasswd 工具来产生即可

查看 Nginx 运行状态
输入地址 http://192.168.8.1/NginxStatus/,输入验证帐号密码,即可看到类似如下内容:
Active connections: 328
server accepts handled requests
9309 8982 28890
Reading: 1 Writing: 3 Waiting: 324

第一行表示目前活跃的连接数
第三行的第三个数字表示Nginx运行到当前时间接受到的总请求数,如果快达到了上限,就需要加大上限值了。
第四行是Nginx的队列状态

作者: xieaotian   发布时间: 2009-05-20

粘过来的时候干扰码去一下 -.-

作者: d9tx   发布时间: 2009-05-21

虽然知道了,还是不错~

作者: elsonwu   发布时间: 2009-11-28

还没有机会用nginx

作者: cf_hz_sl   发布时间: 2009-12-07

呵呵nginx 还正在研究中。。。

作者: 独孤天血   发布时间: 2010-01-13

呵呵nginx 还正在研究中。。。

作者: kissmejj126   发布时间: 2010-02-21

windows下面能做nginx的监控么,我试了下,不行。?

作者: jiangwb1   发布时间: 2010-03-19

我在WINDOWS 也测试过有的不行自己经验不足

作者: 只是因为   发布时间: 2010-05-18

不知道 兼容不

作者: fei   发布时间: 2010-06-02

呵呵 支持一下!

作者: 夜之舞   发布时间: 2010-08-18