# 指定执行nginx的worker进程的用户,默认为nobody
# linux里所有程序都是文件,都具有权限问题,哪些可以访问哪些不能访问通过用户的权限来控制
user nobody;
# worker进程数,一般和核数匹配
worker_processes 1;
# 日志路径,这个设置可以放入全局块,http块,server块,日志级别debug info notice warn error crit alert emerg
error_log logs/error.log info;
# 指定nginx进程运行文件存放地址
pid logs/nginx.pid;
events {
#设置网路连接序列化,防止惊群现象发生,默认为on
# 惊群现象:一个网路连接到来,多个睡眠的进程被同时叫醒,但只有一个进程能获得链接,这样会影响系统性能。
accept_mutex on;
#设置一个进程是否同时接受多个网络连接,默认为off
multi_accept on;
# 事件驱动模型 linux默认为epoll
use epoll;
#最大连接数
worker_connections 1024;
}
http {
#文件扩展名与文件类型映射表,导入外部的mime.types文件
include mime.types;
#默认文件类型
default_type application/octet-stream;
# 日志的自定义格式
# $remote_addr 客户端ip
# $remote_user 远程客户端用户名,一般为:’-’
# $time_local 时间和时区
# $request 请求的url以及method
# $status 响应状态码
# $body_bytes_send 响应客户端内容字节数
# $http_referer 记录用户从哪个链接跳转过来的
# $http_user_agent 用户所使用的代理,一般来时都是浏览器
# $http_x_forwarded_for 通过代理服务器来记录客户端的ip
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;
#取消服务日志
access_log off;
#允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
sendfile on;
#每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
sendfile_max_chunk 100k;
# sendfile开启后才有作用,当数据包累计到一定大小之后在进行发送,可以提升效率
tcp_nopush on;
#连接超时时间,可以在http,server,location块。
keepalive_timeout 65;
# 是否开始压缩,可以提升传输效率,但是会降低cpu性能
gzip on;
# 虚拟主机的配置,可以配置多个
server {
# 监听端口
listen 89;
# #监听地址
server_name localhost;
# 配置路由规则,可以配置多个。/代表根目录,也可以为正则表达式
location / {
#根目录
root html;
#设置默认页
index index.html index.htm;
#拒绝的ip
deny 127.0.0.1;
#允许的ip
allow 172.18.5.54;
}
#错误页
error_page 404 /404.html;
# 将服务器错误页面重定向到静态页面/50x.html
error_page 500 502 503 504 /50x.html;
# 错误页面的路由匹配规则
location = /50x.html {
root html;
}
}
}
Nginx基础应用——配置文件详解
最新推荐文章于 2024-06-08 16:27:57 发布