nginx -s reload 但是新配置经常不生效,可能会有哪些原因呢?

2018-12-27 02:56:01 +08:00
 Livid
16283 次点击
所在节点    NGINX
29 条回复
khy
2018-12-27 10:01:09 +08:00
碰到过几次,都是配置写错[捂脸],可以-t 先。
TrickWu
2018-12-27 10:01:43 +08:00
没遇到过,一般 reload 之后如果有错的话会报错 没报错就生效了。
cominghome
2018-12-27 10:08:04 +08:00
一些改动,reload 貌似是不生效的,一定要 restart。
NsLib
2018-12-27 10:09:43 +08:00
分两种情况:
1. nginx -t 不通过,此时 nginx -s reload 不会生效
2. nginx -s reload 是 graceful shutdown 语义;
如果配置正确的话, 老的 worker 进程停止 accept 新连接, 处理完当前连接后主动退出;
新 worker 处理新请求

看你描述的经常不生效,应该是没有 nginx -t 导致的
Infernalzero
2018-12-27 13:40:00 +08:00
你们说的-t 问题其实可以忽略,这种一般 reload 后都马上看提示就知道的了,我估计楼主说的是 reload 了没有错误信息,配置没有语法错误,但是没有使用新的配置。
这种情况只能 stop 了以后再起才生效
daydaydayup
2018-12-27 14:28:28 +08:00
跟进这个帖子,希望知道最后的解决方法以后少填坑
justicelove
2018-12-27 14:32:26 +08:00
先 -t 检测配置是否正确
firebroo
2018-12-27 21:01:04 +08:00
我也遇到过一次,是在大版本升级的时候,没来得及保留现场,lz 如果可以稳定复现,可以看看各 worker 的 pid 是否变化?
Livid
2018-12-27 23:13:11 +08:00
看起来最大的嫌疑就是那些涉及额外网络连接的模块,我排查一下。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/521361

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX