nginx 更改配置文件后 需要重启吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 更改配置文件后 需要重启吗相关的知识,希望对你有一定的参考价值。

  nginx 更改配置文件后需要重启生效。
  1、更改配置重启nginx:  
  kill -HUP 主进程号或进程号文件路径
  或者使用
  cd /usr/local/nginx/sbin
  ./nginx -s reload
  2、判断配置文件是否正确:  
  nginx -t -c /usr/local/nginx/conf/nginx.conf
  或者
  cd /usr/local/nginx/sbin
  ./nginx -t
参考技术A 修改配置之前,我们先备份一份配置文件 cp mv 命令都可以, 修改配置文件后,需要重启Apache服务器 restart 望采纳 T本回答被提问者和网友采纳

什么时候重启而不重新加载 Nginx?

【中文标题】什么时候重启而不重新加载 Nginx?【英文标题】:When to restart and not reload Nginx? 【发布时间】:2012-11-11 14:31:19 【问题描述】:

什么时候需要重启nginx,reload就不行了? 如果使用像passenger 这样的扩展名会有什么不同吗?

如果服务消耗太多内存,是否应该重新启动服务。重启 Nginx 的任何其他原因,尤其是在扩展或 Nginx 核心配置中的配置更改之后?

在进行配置更改后,可以通过 binary 本身或 Ubuntu 上的 init.d 脚本“/etc/init.d/nginx -h”重新启动或重新加载 nginx。应该首选哪种方法?

【问题讨论】:

我不明白你的最后一段。这是一个问题吗? 【参考方案1】:

重新加载 nginx 比重新启动更安全,因为在终止旧进程之前,会解析新的配置文件,如果有任何问题,整个进程都会中止。

另一方面,当你重新启动 nginx 时,你可能会遇到由于语法错误而导致 nginx 停止并且不会重新启动的情况。

重新加载会终止旧进程,因此无论如何都应该清除任何内存泄漏。

【讨论】:

像modrails.com/documentation/Users%20guide%20Nginx.html 这样的 ngixn 扩展会有什么不同吗? 嗯,当使用乘客时,通常更明智的做法是重新启动应用程序服务器而不是 Web 服务器(在这种情况下,通过触摸 tmp/restart.txt 文件),但除此之外它应该完全一样。 如果我在nginx -t 之前检查语法怎么办?那有什么区别呢? 来自 nginx 指南:一旦主进程接收到重新加载配置的信号,它会检查新配置文件的语法有效性并尝试应用其中提供的配置。如果这是成功的,主进程启动新的工作进程并向旧的工作进程发送消息,请求它们关闭。否则,主进程将回滚更改并继续使用旧配置。【参考方案2】:

我遇到过需要重新启动 nginx 才能让 listen 指令启动新 IP 地址的情况。

【讨论】:

我刚才也有同样的经历……我快疯了,直到我想通了!!【参考方案3】:

Ztyx 是对的——在某些情况下需要在更改监听指令时重新启动。

使用1.6.x,更改监听IP地址时可以重新加载,但从“*:80”监听到IP地址“x.x.x.x:80”时需要重新加载。

我只用 IPv4 确认了这一点,IPv6 的行为可能类似。

【讨论】:

以上是关于nginx 更改配置文件后 需要重启吗的主要内容,如果未能解决你的问题,请参考以下文章

如何修改docker的nginx容器的配置

nginx平滑重启

什么时候重启而不重新加载 Nginx?

Nginx常用命令(启动/重启/停止/测试配置文件/重新加载配置文件)

Nginx常用命令(启动/重启/停止/测试配置文件/重新加载配置文件)

ubuntu 单用户模式更改网卡配置后需要重启网卡吗