重载配置文件 nginx -s reload
热部署(升级nginx) 首先备份二进制文件 cp nginx nginx.old 拷贝新版本的nginx替换以前的nginx二进制文件 cp nginx新 nginx。发送信号 kill -USR2 nginx master旧进程pid 启动新的master进程
这个时候旧master和worker进程不在监听服务,新的连接会进去新的nginx进程中, kill -WINCH master旧进程 实现旧worker优雅的退出。
这时,可以看到旧的master进程还在,但worker已经优雅退出了,旧的master进程不会自动退出,如果出现问题,方便回退,执行relod拉起旧的worker进行,实现回退。
日志切割:备份以前的日志 mv access.log bak.log 然后执行 nginx -s reopen 这个方法不建议用
写成bash脚本,放到crontab计划任务中。
kill -USR1 nginxpid和nginx -s reopen都是让ningx重新打开日志。