如何从命令行列出当前的 Apache 2 虚拟主机?

cod*_*boy 14 ubuntu virtualhost apache-2.4

我想检索当前加载并侦听请求的虚拟主机列表,即不仅仅是 grepping 配置文件。

看起来apache2ctl -S是这样,但我不能 100% 确定这是否只是返回配置文件中包含的内容。

小智 29

该命令a2query -s非常适合我。


use*_*517 8

文档apachectl -S是这么说的

-S 显示从配置文件解析的设置(当前仅显示虚拟主机设置)。

因此,您只会看到在 httpd 启动时读取的配置中加载的那些虚拟主机。


小智 6

您可以使用此命令:

apache2ctl -t -D DUMP_VHOSTS
Run Code Online (Sandbox Code Playgroud)

它列出了所有已启用的网站、conf 文件的路径以及网站使用的端口。


Fro*_*giz 5

我没有找到有关它的官方文档。

该命令 apache2ctl -S检查 site-enabled*.conf + httpd.conf 文件并显示语法是否正确以及虚拟主机列表(以及更多信息)。

但是它不会检查虚拟主机是否正在运行,您可以尝试停止 Apache 并再次启动该命令,结果将相同。

所以apache2ctl -S结果是基于配置文件的。