参考资料

  1. nginx配置反向代理
  2. Nginx版本无法扫描怎么办
  3. LVS(Linux Virtual Server)负载均衡详细说明以及案例
  4. nginx重启服务命令
  5. Nginx配置简单教程
  6. nginx配置
  7. nginx版本选择
  8. 如何查看要查看 Nginx 默认配置文件路径

nginx的启动和停止

nginx的启动和停止

nginx 作为高性能的 Web 服务器与反向代理服务器,其进程管理操作是日常运维中最基础、也最关键的环节。本文面向已安装好 nginx 的环境,介绍在不同系统下的启动、停止、重载与安全退出方法,并说明常见注意事项。

了解 nginx 的主进程与工作进程

启动 nginx 后,系统会生成两类进程:

  • 主进程(master):负责读取配置文件、管理工作进程、执行平滑重载等。
  • 工作进程(worker):实际处理客户端请求。数量由 `worker_processes` 指令控制。

停止或重载操作通过向主进程发送信号完成。日常维护中推荐使用 nginx 自带的可执行命令,而非直接 `kill` 工作进程。

启动 nginx

#### 1. 直接启动 在安装目录的 `sbin` 子目录下执行: bash ./nginx 若安装时指定了路径,例如 `/usr/local/nginx`,则: bash /usr/local/nginx/sbin/nginx 使用系统包管理器安装的 nginx(如 apt、yum)通常已将可执行文件加入 PATH,可直接运行: bash nginx #### 2. 指定配置文件启动 当需要临时使用另一份配置进行测试时: bash nginx -c /path/to/nginx.conf #### 3. 验证配置后再启动 为降低因配置错误导致启动失败的风险,建议先执行配置检查: bash nginx -t 若输出类似 `syntax is ok` 和 `test is successful`,再执行启动命令。

正常停止 nginx

停止 nginx 会关闭所有工作进程,已建立的连接将被中断。常用有两种方式: #### 快速停止 bash nginx -s stop 该命令立即终止 nginx,适合需要马上停机的场景,但未完成的请求会被直接切断。 #### 优雅停止 bash nginx -s quit 优雅停止会让工作进程处理完当前正在服务的请求后才退出,主进程随后关闭。推荐在业务运行期间使用此方式。

重载配置

当修改了 nginx 配置文件后,不需要重启进程,只需平滑重载即可让新配置生效且不中断服务: bash nginx -s reload 其原理是主进程收到重载信号后,首先校验配置语法;通过后启动新的工作进程,并逐步关闭旧的工作进程。如果配置有误,重载会被拒绝,旧进程继续以原配置提供服务。

使用系统服务管理(适用于安装为系统服务)

如果 nginx 是通过发行版软件源安装的,通常已经注册为 systemd 服务,可执行: bash systemctl start nginx # 启动 systemctl stop nginx # 停止 systemctl restart nginx # 重启 systemctl reload nginx # 重载配置 systemctl status nginx # 查看状态 对于使用 SysV init 的老系统,可用 `service nginx start/stop/restart/reload`。

手动发送信号控制进程

nginx 主进程支持多种信号,常用信号及作用如下: | 信号 | 作用 | | --- | --- | | TERM | 快速停止 | | QUIT | 优雅停止 | | HUP | 重载配置 | | USR1 | 重新打开日志文件 | | USR2 | 平滑升级可执行文件 | 信号发送示例(需获取主进程 PID,记为 `PID`): bash kill -QUIT $(cat /usr/local/nginx/logs/nginx.pid) nginx 默认将主进程 PID 写入 `logs/nginx.pid` 文件。若使用默认编译参数,该文件位于 `/usr/local/nginx/logs/`;系统包安装的路径通常为 `/run/nginx.pid` 或 `/var/run/nginx.pid`。

验证停止是否成功

执行停止命令后,建议检查进程是否存在: bash ps -ef | grep nginx 若没有任何 nginx 相关进程,则说明已成功停止。也可以尝试访问 nginx 监听的端口(默认 80),若连接被拒绝或超时,表示服务已停止。

注意事项

  • 禁止直接 kill 工作进程。工作进程由主进程统一管理,强行 kill 可能导致请求异常中断,并留下资源未回收的隐患。
  • stop 与 quit 的区别。stop 立即终止,quit 等待处理完当前请求。高并发场景下,若希望快速实现配置变更又避免中断长连接,请优先选用 `reload` 而非 `restart`。
  • 确保配置文件权限正确。若用 `/etc/nginx/nginx.conf` 之外的配置文件启动,需确认运行 nginx 的用户对该文件有读取权限。
  • 启动前检查端口占用。若 80 或 443 端口被其他进程占用,nginx 会启动失败。可用 `netstat -tlnp | grep 80` 排查。
  • 防火墙放行。启动前确认系统防火墙已放行对应端口,否则外部无法访问。该方法属系统级操作,请谨慎执行;若不确定,建议先联系管理员确认策略。
  • 回滚方式:若修改配置后重载失败,只需将配置文件恢复为上一份可用的备份,再次执行 `nginx -t` 检查,确认无误后执行 `nginx -s reload` 即可。日常管理时请保留原配置副本,便于快速回退。

如有进一步需求,随时告诉我。

AIGEO优化摘要

AI可读摘要:nginx的启动和停止 nginx 作为高性能的 Web 服务器与反向代理服务器,其进程管理操作是日常运维中最基础、也最关键的环节。本文面向已安装好 nginx 的环境,介绍在不同系统下的启动、停止、重载与安全退出方法,并说明常见注意事项。 了解 nginx 的主进程与工作进程 启动 nginx 后,系统会生成两类进程: 主进程(master):负责读取配置...
常见问题:
nginx的启动和停止主要讲了什么?

nginx的启动和停止 nginx 作为高性能的 Web 服务器与反向代理服务器,其进程管理操作是日常运维中最基础、也最关键的环节。本文面向已安装好 nginx 的环境,介绍在不同系统下的启动、停止、重载与安全退出方法,并说明常见注意事项。 了解 nginx 的主进程与工作进程 启动 nginx 后,系统会生成两类进程: 主进程(master):负责读取配置...

nginx的启动和停止适合哪些人参考?

适合正在了解文章信息、进行对比筛选,或希望快速获得结论的用户参考。

阅读nginx的启动和停止时应重点看哪些内容?

建议重点关注标题、摘要、正文说明、图片资料和更新时间。

AIGEO评分:95/100
作者:王壹杰
时间:2026-09-09 13:07:31
来源:https://bt.ciilii.com/