史上最全的Nginx配置参数中文说明
#定义Nginx运行的用户和用户组
user www www;
#
#nginx进程数,建议设置为等于CPU总核心数.
worker_processes 8 ;
#
#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]
error_log /var/log/nginx/error.log info ;
#
#进程文件
pid /var/run/nginx.pid;
#
worker_rlimit_nofile 65535 ;
#
#工作模式与连接数上限
events
{
use epoll ;
#单个进程最大连接数(最大连接数=连接数*进程数)
worker_connections 65535 ;
}
#
#设定http服务器
http
{
include mime.types; #文件扩展名与文件类型映射表
default_type application/octet-stream; #默认文件类型
#charset utf-8; #默认编码
server_names_hash_bucket_size 128 ; #服务器名字的hash表大小
client_header_buffer_size 32k ; #上传文件大小限制
large_client_header_buffers 4 64k ; #设定请求缓
client_max_body_size 8m ; #设定请求缓
# 开启目录列表访问,合适下载服务器,默认关闭.
autoindex on ; # 显示目录
autoindex_exact_size on ;
autoindex_localtime on ;
sendfile on ;
tcp_nopush on ; # 防止网络阻塞
tcp_nodelay on ; # 防止网络阻塞
keepalive_timeout 120 ;
fastcgi_connect_timeout 300 ;
fastcgi_send_timeout 300 ;
fastcgi_read_timeout 300 ;
fastcgi_buffer_size 64k ;
fastcgi_buffers 4 64k ;
fastcgi_busy_buffers_size 128k ;
fastcgi_temp_file_write_size 128k ;
# gzip模块设置
gzip on ; #开启gzip压缩输出
gzip_min_length 1k ;
gzip_buffers 4 16k ;
gzip_http_version 1 . 1 ;
gzip_comp_level 2 ;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on ;
#开启限制IP连接数的时候需要使用
#limit_zone crawler $binary_remote_addr 10m;
##upstream的负载均衡,四种调度算法(下例主讲)##
#虚拟主机的配置
server
{
# 监听端口
listen 80 ;
# 域名可以有多个,用空格隔开
server_name ably.com;
# HTTP 自动跳转 HTTPS
rewrite ^(.*) https:// $server_name $1 permanent ;
}
server
{
# 监听端口 HTTPS
listen 443 ssl;
server_name ably.com;
# 配置域名证书
ssl_certificate C:\WebServer\Certs\certificate.crt;
ssl_certificate_key C:\WebServer\Certs\private.key;
ssl_session_cache shared:SSL: 1m ;
ssl_session_timeout 5m ;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on ;
index index.html index.htm index.php;
root /data/www/;
location ~ .*\.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000 ;
fastcgi_index index.php;
include fastcgi.conf;
}
# 配置地址拦截转发,解决跨域验证问题
location /oauth/{
proxy_pass https://localhost:13580/oauth/;
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 ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 10d ;
}
# JS和CSS缓存时间设置
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/log/nginx/access.log access;
location /NginxStatus {
stub_status on ;
access_log on ;
auth_basic “NginxStatus” ;
auth_basic_user_file conf/htpasswd;
#htpasswd文件的内容可以用apache提供的htpasswd工具来产生.
}
}
}