# 这个值也可以在启动 nginx 时通过 -c 选项指定
pid logs/nginx.pid;
# 开启 debug,需要编译时指定 --with-debug
# 全局、http、server 都可以有自己的 error_log 字段
error_log file | stderr [debug | info | warn | error | crit | alert | emerg];
# 引入外部 conf 文件。需要符合 conf 规则,运行 nginx 的用户有读写权限
# 全局、server、location 都可以使用
include file;
# 指定可以运行 nginx 的用户和所在组,如果删除此行,则默认为 root nobody
user www www;
worker_process 1; # number | auto
events {
# 设置允许每一个 worker process 同时开启的最大连接数
# 这里的数字不仅值和前端用户建立的连接数,而是包括所有可能的连接数
# 这个数字不能大于操作系统支持打开的最大文件句柄数量
worker_connections 1024;
# 是否开启序列化。默认开启,防止 惊群
# 这个值只能在 events 里指定
accept_mutex on | off;
# method 可以为 select、poll、kqueue、epoll、rtsig、/dev/poll 以及 eventport
# 可以在编译时指定 --with-select_module 和 --without-select_module 设置是否强制编译 select 模块到 nginx 内核
# 使用 --with-poll_module 和 --without-poll_module 设置是否强制编译 poll 模块到 nginx 内核
use method
}
http {
include mime.types;
# 如果没有设置这个值,默认为 text/plain
# 这个值可以在 HTTP、server、location 块分别设置
default_type application/octet-stream;
# 服务日志的格式字符串
# 可以使用 Nginx 配置预设的一些变量获取相关内容,变量的名称使用双引号括起来。格式整体使用单引号括起来
log_format main '$remote_addr - $remote_user [$time_local] "$request"
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
# 记录 Nginx 服务器提供服务过程应答前端请求的日志
# 格式为 access_log path [format [buffer=size]];
# path,配置服务日志的文件存放的路径和名称
# format,可选项,自定义服务日志的格式字符串,也可以通过“格式串的名称”使用 log_format 指令定义好的格式。“格式串的名称”在 log_format 指令中定义
# size,配置临时存放日志的内存缓存区大小
#
# 次指令可以在 HTTP、server、location 块中进行设置
# 如果要取消记录服务日志的功能,则使用:access_log off;
access_log logs/access.log main;
# 开启或关闭使用 sendfile() 传输文件
# 可以在 HTTP、server、location 块中设置
sendfile on;
# 设置每个 worker process 每次调用 sendfile() 传输数据数量最大值
# 如果值为 0,表示没有限制。默认值为 0
# 如 sendfile_max_chunk 128k;
# 可以在 HTTP、server、location 块中设置
sendfile_max_chunk 0;
#tcp_nopush on;
# 和用户会话保持时间
# 格式: keepalive timeout [header_timeout];
# timeout,服务器端对连接的保持时间,默认为 75 秒
# header_timeout,可选项。在应答报文头部 Keep-Alive 域设置超时时间:“Keep-Alive: timeout=header_timeout”
# 可以在 HTTP、server、location 块中设置
keepalive_timeout 65;
# Nginx 服务器端和用户建立会话连接后,用户端通过此连接发送请求
# 该字段用于限制通过某一连接向 Nginx 服务器发送请求的次数
# 默认值为 100
# 可以在 HTTP、server、location 块中设置
keepalive_request number;
#gzip on;
server {
# 格式一:listen address[:port] [default_server] [setfib=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [deferred] [accept_filter=filter] [bind] [ssl];
# 格式二:listen port [default_server] [setfib=number] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ipv6only=on|off] [ssl];
# 格式三:listen unix:path [default_server] [backlog=number] [rcvbuf=size] [sndbuf=size] [accept_filter=filter] [deferred] [bind] [ssl];
# address, IP 地址,如果是 IPv6 的地址,需要使用中括号“[]”括起来,比如 [fe80::1] 等
# port,端口号,如果只定义了 IP 地址没有定义端口号,就使用 80 端口
# path,socket 文件路径,如 /var/run/nginx.sock 等
# default_server,标识符,将此虚拟主机设置为 address:port 的默认主机。Nginx-0.8.21 之前使用 default
# setfib=number,Nginx-0.8.44 中使用这个变量为监听 socket 关联路由表,目前只对 FreeBSD 起作用,不常用
# rcvbuf=zise,设置监听 socket 接收缓存区大小
# backlog=number,设置监听函数 listen() 最多允许多少网络连接同时处于挂起状态,在 FreeBSD 中默认为 -1,其他平台默认为 511
# sndbuf=size,设置监听 socket 发送缓存区大小
# deferred,标识符,将 accept() 设置为 Deferred 模式
# accept_filter=filter,设置监听端口对请求的过滤,被过滤的内容不能被接收和处理。本指令只在 FreeBSD 和 NetBSD 5.0+ 平台下有效。filter 可以设置为 dataready 或 httpready
# bind,标识符,使用独立的 bind() 处理此 address:port;一般情况下,对于端口相同而 IP 地址不同的多个连接,Nginx 服务器将只使用一个监听命令,并使用 bind() 出路端口相同的所有连接
# ssl,标识符,设置会话连接使用 SSL 模式进行,此标识符和 Nginx 服务器提供的 HTTPS 服务有关。
# listen *:80 | *:8000; 监听所有 80 端口和 8000 端口
# listen 192.168.1.10:8000; 监听具体的 IP 和具体的端口上的连接
# listen 192.168.1.10; 监听具体 IP 的所有端口上的连接
# listen 8000; 监听具体端口上的所有 IP 连接,等同于 listen *:8000
# listen 192.168.1.10 default_server backlog=1024; 设置 192.168.1.10 的连接请求默认由此虚拟主机处理,并且允许最多 1024 网络连接同时处于挂起状态
listen 80;
# server_name name01 name02 ...
# name01 作为此虚拟主机的主要名称
# 在 name 中可以使用通配符“*”,但通配符只能用在由三段字符串组成的名称的首段或尾端,或者由两端字符串组成的名称的尾端,如:server_name ~^www\d+\.myserver\.com$
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;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index.htm;
# }
#}
# HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
}
Nginx Conf
猜你喜欢
转载自blog.csdn.net/kaiyuanheshang/article/details/82580624
今日推荐
周排行