Apache 2 - 在Windows上重新加载配置

Ali*_*rin 7 windows apache2 httpd.conf

我有一个PHP脚本修改我的httpd.conf文件,所以我需要在Apache中自动重新加载它.

在Linux上,有正常的重启,但在Windows上(我使用restart命令)它终止所有当前连接.在Windows上是否有一个命令为优雅重启?这有解决方法吗?

Pan*_*ack 14

是的,你应该使用-k开关.

   httpd.exe -k restart or apache.exe -k restart 
Run Code Online (Sandbox Code Playgroud)

这里有更多信息.http://www.zrinity.com/developers/apache/usage.cfm

编辑:

这不应该是优雅的观点.注意我用过-k.这与正常重启不同.它允许当前会话在重新读取配置时完成其任务,以便它立即开始接收新请求.

从文档:

USR1或优雅信号导致父进程建议孩子在他们当前请求后退出(或者如果他们没有提供任何东西则立即退出).父级重新读取其配置文件并重新打开其日志文件.当每个孩子死亡时,父母将其替换为来自新一代配置的孩子,该孩子立即开始提供新请求.

http://httpd.apache.org/docs/2.2/stopping.html#graceful

它正在做你想要的.

编辑2:

添加此链接并提供两个可能的版本,因为有些人认为您只有一种特定的方式来做某事而不是自己搜索.

http://httpd.apache.org/docs/2.4/platform/windows.html#wincons

  • @DaveG 是的。我什至提供了一个链接。有些版本使用`Apache.exe`,有些版本使用`httpd.exe`。如果您从命令提示符执行此操作,则无需在 Windows 中使用该扩展。**这也是我提供链接的原因。它也是例如。无论操作系统如何,主要线索是 -k 选项。你连读书都费心了吗?所以这是一个毫无根据的downvote。 (2认同)