主配置文件:
查看nginx的进程可以看到nginx所使用的配置文件:
主配置一般会被用来设置一些全局的参数:
参数详解:
user nobody nobody; //设置nginx子进程的属主 属组 ,注意是子进程(worker process),主进程(master process)是root用户
worker_processes 24; //设置允许启动的最大子进程的数目,一般设置为和服务器的cpu的核数一样(我们生产环境就是这样的),如果设置为auto,将会自动检测
worker_rlimit_nofile 65500; //设置每个worker进程允许打开的最大数量的文件描述符 文件间描述符的详细解释请移步 文件描述符
error_log /var/log/53kf/nginx/error.log crit; //设置nginx错误日志的路径,以及记录级别,一共有六种模式 #[ debug | info | notice | warn | error | crit ]
pid /var/run/nginx.pid; //设置nginx主进程的pid文件
events { //nginx的时间模块
use epoll; //使用的异步IO模型(epoll或者select)
accept_mutex off; //Nginx使用连接互斥锁进行顺序的accept()系统调用,默认是on
worker_connections 65535; //设置可由一个worker进程同时打开的最大连接数。如果设置了上面提到的worker_rlimit_nofile,我们可以将这个值设得很高。记住,最大客户数也由系统的可用socket连接数限制(~ 64K),所以设置不切实际的高没什么好处。
}
http {
## Genernal options //一般的选项
include config/waf/naxsi_core.rules; //
include config/params/mime.types; //内容类型,规定什么内容用什么样的形式显示
default_type application/octet-stream; //未知
# charset utf-8; # no needed by 53kf
server_names_hash_bucket_size 128; // 设置服务名字哈希表的大小,如果太小就会造成服务起不来
server_tokens off; //启用或禁用发射nginx版本“服务器”的错误消息和响应标头字段。
server_name_in_redirect off; //服务名重定向功能 详解请移步 重定向
ignore_invalid_headers on; //是否忽略不合法的http首部,默认为on,off意味着请求首部中出现不合规的首部将拒绝响应,只能用于server和http中,建议改为off
reset_timedout_connection on; //在客户端停止响应之后,允许服务器关闭连接,释放socket关联的内存
#aio on;
directio 4k;
directio_alignment 4k;
output_buffers 1 128k;
include config/params/gzip_params;
client_header_buffer_size 32k;
large_client_header_buffers 8 32k;
client_body_buffer_size 2048k;
client_body_in_single_buffer off;
client_body_temp_path /dev/shm/client_body_temp 1 2;
client_header_timeout 90;
client_body_timeout 90; #
client_max_body_size 10m;
send_timeout 90;
keepalive_timeout 30;
sendfile on;
tcp_nopush on;
tcp_nodelay on;