Skip to content

重载配置文件

image-20250107074150482

nginx重载配置文件

重载配置文件

版权

本内容来自:《极客时间:Nginx 核心知识 150 讲》,版权归原作者所有,这里仅记录自己的学习笔记。

bash
[root@localhost sbin]# pwd
/home/geek/nginx/sbin
[root@localhost sbin]# vim ../conf/nginx.conf

#打开这个开关
tcp_nopush     on;

自己的报错了:。。。

image-20250102071715383

bash
[root@localhost sbin]# ./nginx -s reload
nginx: [error] open() "/home/geek/nginx/logs/nginx.pid" failed (2: No such file or directory)

老师的没报错:

image-20250102071755572

已解决。

image-20250102072128306

FAQ

案例

老师,您好,请教一个问题,reload操作是只允许静态操作还是说可以正在有业务的环境中直接reload操作?如果是后者那么会不会对正在运行的业务有小概率影响?比如导致nginx进程异常

作者回复: 不会的,reload可以在业务高峰期操作,它只是启动了双倍的worker进程,对性能影响不算大

案例

陶辉老师 , 遇到个问题 . 测试机上运行了几个项目 , 我修改了其中一个的nginx配置文件 , 然后nginx -t , 一起正常 , 再nginx -s reload , 报错了 : nginx: [error] invalid PID number “” in “/usr/local/var/run/nginx/nginx.pid” 后来我echo了正在运行的进程id到nginx.pid里就好了... 想问一下,这个错误是怎么产生的???

NOTE

作者回复: 比如,nginx非正常退出时,就会出现这个问题。原因是,nginx.pid里存放的还是之前进程的pid,但实际上进程已经不在,这个时候,reload是不能执行的,一定要执行,就会向错误或者不存在的进程发送信号

最近更新