IT俱乐部 Nginx 解决nginx重新加载配置文件,配置文件没生效问题

解决nginx重新加载配置文件,配置文件没生效问题

nginx重新加载配置文件,配置文件没生效

问题

就是在修改nginx.conf配置文件之后,配置文件没有生效。

解决

1.检查nginx是否开启

cmd输入命令行,检查nginx是否开启

tasklist /fi "imagename eq nginx.exe" 

这样就说明开启了

2.关闭nginx,方法有很多

具体命令如下:

(1) 快速停止或关闭nginx:

nginx -s stop

(注意:使用nginx -s stop命令关闭所启动的nginx时,同时会删除logs中的nginx.pid文件)

(2) 完整有序的停止nginx:

nginx -s quit

(注意:使用nginx -s quit命令关闭所启动的nginx时,同时也会删除logs中的nginx.pid文件)

(3) 使用taskkill停止或关闭nginx:

taskkill /f /t /im nginx.exe

(注意:使用taskkill /f /t /im nginx.exe命令关闭所启动的nginx时,不会删除logs中的nginx.pid文件)

我这里是用第三个才有用

3.开启nginx

start nginx.exe

4.重新加载配置

nginx.exe -s reload

最后就生效了

nginx启动,停止和重新加载配置

要启动nginx的,运行可执行文件。一旦nginx的启动时,它可以通过与-s参数调用可执行来控制。使用以下语法

nginx -s signal

其中,信号可以是下列之一:

  • stop — fast shutdown
  • quit — graceful shutdown
  • reload — reloading the configuration file
  • reopen — reopening the log files

例如,要停止nginx的过程与等待工作进程完成服务的当前请求,下面的命令可以执行:

nginx -s quit

This command should be executed under the same user that started nginx.

在配置文件中所作的更改不会被应用,直到命令重新配置被发送到nginx的或重新启动。

要重新加载配置,执行:

nginx -s reload

一旦主处理接收到的信号重新加载配置,它检查新的配置文件的语法正确性并尝试应用在其提供的配置。

如果这是一次成功,主进程开始新的工作流程,将消息发送到老的工作进程,要求它们关闭。

否则,主进程回滚的变化,继续与旧的配置工作。旧的工作进程,在接收到命令关闭,停止接受新的连接,并继续服务于当前请求,直到所有的要求提供服务。

在这之后,老工人处理退出。信号也可发送到nginx的与Unix工具的帮助下过程,如杀工具。

在这种情况下,一个信号被直接发送到一个进程与给定的进程ID。

nginx的主进程的进程ID写入,默认情况下,该nginx.pid在目录/ usr /本地/ nginx的/日志或/ var /运行。

例如,如果主进程ID是1628,送造成的nginx的正常关机的信号QUIT,执行

kill -s QUIT 1628

启动nginx:

nginx -c nginx.conf

用于获取所有正在运行的nginx的进程列表,ps工具可以使用,例如,以下面的方式:

ps -ax | grep nginx

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/server/nginx/12120.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部