nginx.conf基本配置
##Start.
##Basic 基础配置
user www www; #运行用户 worker_processes 12; #启动进程,通常设置成和cpu的数量相等 worker_cpu_affinity 000000000001 000000000010 000000000100 000000001000 000000010000 000000100000 000001000000 000010000000 000100000000 001000000000 010000000000 100000000000; worker_rlimit_nofile 65535; error_log var/logs/error.log; #错误日志 pid var/logs/nginx.pid; #pid文件
#工作模式及连接数上限
events {
use epoll;
#epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能
worker_connections 65535;
#单个后台worker process进程的最大并发链接数
}
#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
server_tokens off;
include nginx.mime.types; #设定mime类型,类型由nginx.mime.types文件定义
default_type application/octet-stream;
sendfile on;
#sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.
map $http_x_forwarded_for $clientip { default $http_x_forwarded_for; "" $remote_addr; } log_format main '$http_host $clientip ${request_time}s - [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" - "SUP=$cookie_SUP" "REQUEST_ID=$request_uid" "$http_user_agent"'; add_header DPOOL_HEADER venus237; keepalive_timeout 0; #连接超时时间
lingering_timeout 50ms; #等待额外数据的时间
#lingering_time #处理总时间
#lingering_close
# nginx的lingering_close用于在请求完成后,接收客户端发送的额外数据并全部忽略掉,防止因关闭连接时接收缓冲区中仍有数据而停止发送响应并返回RST,默认为on.
#设定请求缓冲
client_header_buffer_size 8k; client_max_body_size 8m; client_body_timeout 10s; client_header_timeout 5s; large_client_header_buffers 8 4k; server_names_hash_bucket_size 128;
open_file_cache max=65535 inactive=20s; open_file_cache_valid 30s; open_file_cache_min_uses 3; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; fastcgi_buffer_size 4k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 8k; fastcgi_max_temp_file_size 0;
##开启gzip压缩
gzip on; gzip_flush_mode SYNC_FLUSH; gzip_min_length 1k; gzip_buffers 4 4k; gzip_http_version 1.1; gzip_comp_level 9; gzip_types text/plain text/css text/xml application/x-javascript application/json; gzip_vary on; include vhost/*.conf; #加载server配置文件 }
这个文件只是基本配置,server配置、负载均衡等配置分别有自己的文件,使得配置文件比较易于管理,vhost下面放置了所有的server服务器配置,upstream下面放置负载均衡配置。