翼度科技»论坛 云主机 服务器技术 查看内容

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

7

主题

7

帖子

21

积分

新手上路

Rank: 1

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


问题

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

解决

1.检查nginx是否开启
cmd输入命令行,检查nginx是否开启
  1. tasklist /fi "imagename eq nginx.exe"
复制代码

这样就说明开启了
2.关闭nginx,方法有很多
具体命令如下:
(1) 快速停止或关闭nginx:
  1. nginx -s stop
复制代码
(注意:使用nginx -s stop命令关闭所启动的nginx时,同时会删除logs中的nginx.pid文件)
(2) 完整有序的停止nginx:
  1. nginx -s quit
复制代码
(注意:使用nginx -s quit命令关闭所启动的nginx时,同时也会删除logs中的nginx.pid文件)
(3) 使用taskkill停止或关闭nginx:
  1. taskkill /f /t /im nginx.exe
复制代码
(注意:使用taskkill /f /t /im nginx.exe命令关闭所启动的nginx时,不会删除logs中的nginx.pid文件)
我这里是用第三个才有用

3.开启nginx
  1. start nginx.exe
复制代码
4.重新加载配置
  1. nginx.exe -s reload
复制代码
最后就生效了

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

要启动nginx的,运行可执行文件。一旦nginx的启动时,它可以通过与-s参数调用可执行来控制。使用以下语法
  1. nginx -s signal
复制代码
其中,信号可以是下列之一:

  • stop — fast shutdown
  • quit — graceful shutdown
  • reload — reloading the configuration file
  • reopen — reopening the log files
例如,要停止nginx的过程与等待工作进程完成服务的当前请求,下面的命令可以执行:
  1. nginx -s quit
复制代码
  1. This command should be executed under the same user that started nginx.
复制代码
在配置文件中所作的更改不会被应用,直到命令重新配置被发送到nginx的或重新启动。
要重新加载配置,执行:
  1. nginx -s reload
复制代码
一旦主处理接收到的信号重新加载配置,它检查新的配置文件的语法正确性并尝试应用在其提供的配置。
如果这是一次成功,主进程开始新的工作流程,将消息发送到老的工作进程,要求它们关闭。
否则,主进程回滚的变化,继续与旧的配置工作。旧的工作进程,在接收到命令关闭,停止接受新的连接,并继续服务于当前请求,直到所有的要求提供服务。
在这之后,老工人处理退出。信号也可发送到nginx的与Unix工具的帮助下过程,如杀工具。
在这种情况下,一个信号被直接发送到一个进程与给定的进程ID。
nginx的主进程的进程ID写入,默认情况下,该nginx.pid在目录/ usr /本地/ nginx的/日志或/ var /运行。
例如,如果主进程ID是1628,送造成的nginx的正常关机的信号QUIT,执行
  1. kill -s QUIT 1628
复制代码
启动nginx:
  1. nginx -c nginx.conf
复制代码
用于获取所有正在运行的nginx的进程列表,ps工具可以使用,例如,以下面的方式:
  1. ps -ax | grep nginx
复制代码
总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源:https://www.jb51.net/server/322139rcc.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具