nginx网站标准配置

#nginx开启的进程数

worker_processes 4; #4核CPU

#定义全局错误日志定义类型,[debug|info|notice|warn|crit]

error_log logs/error.log info;

#指定进程ID存储文件位置

pid logs/nginx.pid;

#一个nginx进程打开的最多文件

worker_rlimit_nofile 65535;

events {

#use[kqueue|rtsig|epoll|/dev/poll|select|poll];

use epoll;

#每个进程可以处理的最大连接数

worker_connections 65535;

#worker工作方式:串行

multi_accept on;

}

http {

#文件扩展名与文件类型映射表

include mime.types;

#默认文件类型

default_type application/octet-stream;

#设置日志模式

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '

# '$status $body_bytes_sent "$http_referer" '

# '"$http_user_agent" "$http_x_forwarded_for"';

#连接日志的路径

#access_log logs/access.log main;

#更为严重的错误日志,减少IO压力

error_log logs/error.log crit;

#关闭日志

#ccess_log off;

#默认编码

#charset utf-8;

#服务器名字的hash表大小

server_names_hash_bucket_size 128;

#客户端请求单个文件的最大字节数

client_header_buffer_size 32k;

#指定客户端请求中较大的消息头的缓存最大数量和大小。

large_client_header_buffers 4 64k;

#开启高效传输模式。

sendfile on;

#防止网络阻塞

tcp_nopush on;

tcp_nodelay on;

#客户端连接超时时间,单位是秒

keepalive_timeout 60;

#客户端请求头读取超时时间

client_header_timeout 10;

#设置客户端请求主体读取超时时间

client_body_timeout 10;

#响应客户端超时时间

send_timeout 10;

#limit模块

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

limit_conn_zone $binary_remote_addr zone=addr:10m;

#隐藏响应header和错误通知中的版本号

server_tokens off;

#gzip模块

gzip on;

gzip_min_length 1k;

gzip_buffers 4 16k;

gzip_http_version 1.0;

gzip_comp_level 2;

gzip_types text/plain application/x-javascript text/css application/xml;

gzip_vary on;

server {

listen 80;

server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location / {

root html;

index index.html index.htm;

}

#错误信息返回页面

#error_page 404 /404.html;

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

}