apache2ctl“-k”标志是什么?

fel*_*the 12 apache-http-server

我已经搜索了一个小时,找到了一百个使用它的例子,但没有解释它的作用。我确实检查过man apache2ctl;它也没有解释 k 标志(尽管它确实在示例中使用了它)。

slh*_*hck 9

是的,它有点隐藏在描述中

在传递模式下操作时,apachectl可以获取httpd二进制文件的所有可用参数。

apachectl [ httpd-argument ]
Run Code Online (Sandbox Code Playgroud)

那么让我们看看http's 的文档

-k start|restart|graceful|stop|graceful-stop
Run Code Online (Sandbox Code Playgroud)

httpd开始、重新启动或停止的信号。

因此,如果您使用-k <option>,您将简单地传递给httpd需要此参数的 。

如果您不使用-k,apache2ctl将改为查找它将自行处理的命令,这些命令与所采用的命令相同httpd


查看源代码展示了这种行为,其中case语句检查第一个参数是否是可识别的内部命令之一,最后(作为后备),所有内容都传递到httpd.

apachectl [ httpd-argument ]
Run Code Online (Sandbox Code Playgroud)