Nginx 配置语法
- 配置文件由指令与指令块组成
- 每条指令以 ; 结尾,指令与参数以空格符号分隔
- 指令块以{} 大括号将多条指令组合在一起
- include 语句允许组合多个配置文件以提升可维护性
- 使用#符号添加注释,提高可读性
- 使用$符变量
- 部分指令的参数支持正则表达式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
worker_processes 1;
events { worker_connections 1024; }
http { include mime.types; default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server { listen 80; server_name localhost;
location / { root html; index index.html index.htm; }
error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
|
http配置指令块主要包含下面4个部分
- http
- server
- location
- upstream
Nginx命令行
- 格式 nginx -s reload
- 帮助 -? -h
- 使用指定的配置文件 -c
- 指定配置文件指定 -g
- 指定运行目录 -p
- 发送信号 -s(立刻停止 stop 优雅退出 quit 重载配置文件 reload 重新开始记录日志文件reopen)
- 测试配置文件是否有语法错误 -t -T
- 打印Nginx的版本信息、编译信息等 -v -V
Nginx 热部署
备份
cp nginx nginx.old
用新编译好的nginx 替换
部署切换
-ef | grep nginx1 2 3 4 5
| kill -USR2 pid
kill -WNCH pid
|
日志切割
移动日志 mv xxx.log xxx.bak 重新开始记录日志文件,更好的方式是通过脚本进行
./nginx -s reopen