nginx -s详解
时间: 2024-09-14 20:12:28 浏览: 70
ingress-nginx-controller-1.9.yaml
Nginx 的 `-s` 参数是一种信号(Signal)选项,用于在运行时控制 Nginx 服务器的行为。当你需要对正在运行的服务进行某种操作时,可以使用 `-s` 后接特定的命令。以下是几个常用的 `-s` 命令及其含义:
1. `quit` 或 `stop`: 关闭当前的 Nginx 进程。这会终止监听的所有连接并停止处理请求。
2. `reload` 或 `reopen_logs`: 优雅重启 Nginx,即关闭旧的套接字文件并重新加载配置文件,同时保持已有的连接继续服务新的请求。这是一个在无需中断服务的情况下更新配置的好方式。
3. `Graceful reload` (加上进程管理器如pm2、systemd的特定标志): 类似于 `reload`,但在一些系统上可能会等待现有连接完成后才完全重启,提供更平滑的重启体验。
4. `reopen log files`: 只关闭日志文件,并不会重启整个服务,适合定期刷新或清理日志记录的情况。
使用 `-s` 命令通常是在命令行或通过 SSH 远程连接到服务器时,为了维护和管理 Nginx 实时而执行的操作。例如:
```bash
sudo nginx -s quit # 立即停止 Nginx
sudo nginx -s reopen_logs # 刷新日志文件
```
阅读全文