Nginx 服务通过 listen 指令的指令值监听网络请求,可以是 IP 协议的形式,也可以是 UNIX 域套接字。如果不设置 listen 指令,Nginx 在以超级用户运行时则监听 80 端口,以非超级用户运行时则监听 8000 端口。
http { | |
server { | |
listen 127.0.0.1:8000; # 监听127.0.0.1的8000端口 | |
listen 127.0.0.1; # 监听127.0.0.1的默认80端口(root权限) | |
listen 8000; # 监听本机所有IP的8000端口 | |
listen *:8000; # 监听本机所有IP的8000端口 | |
listen localhost:8000; # 监听locahost的8000端口 | |
listen [::]:8000; # 监听IPv6的8000端口 | |
listen [::1]; # 监听IPv6的回环IP的默认80端口(root权限) | |
listen unix:/var/run/nginx.sock; # 监听域套接字文件 | |
listen *:8000 \ # 监听本机的8000端口 | |
default_server \ # 当前服务是http指令域的主服务 | |
fastopen=30 \ # 开启fastopen功能并限定最大队列数为30 | |
deferred \ # 拒绝空数据连接 | |
reuseport \ # 工作进程共享socket这个监听端口 | |
backlog=1024 \ # 请求阻塞时挂起队列数是1024个 | |
so_keepalive=on; # 当socket为保持连接时,开启状态检测功能 | |
} | |
} |