我通常:
- 更新生产 conf 文件的本地近副本( ServerName 指令和 Logs 显然会有所不同),并对重写规则等内容进行更改。
- /etc/init.d/apache2 在本地重新启动或正常并确保其正常工作
- scp 配置文件到生产服务器
- apache2ctl 配置测试
- apache2ctl 优雅
我从来没有真正遵循任何指南,只是拿起了一些命令。这通常是它的完成方式吗?我几乎总是在生产服务器上使用优雅,因为我不想在完全重启时丢失客户端 - 优雅重启相当普遍,对吧?在任何情况下,优雅是不够的,我需要完全重启吗?
这取决于您所处的规模——您已经完成了基本步骤,主要区别在于配置文件如何传播到生产服务器(更大的站点将涉及诸如将其检入修订控制和等待之类的事情用于或强制 Puppet、Chef、CfEngine 等传播更改)和使用的自动化程度(同样,更大的站点希望有更多的自动化程序,因为它们将处理不止一台服务器)。
至于优雅与硬重启 - 在优雅中,“主要”Apache父进程不会退出,只是工作子进程。我已经看到主进程有某种缓存状态的情况——旧的 DNS,无论如何——没有被优雅的刷新,只有一个完整的停止/启动循环。