有没有办法查询Apache服务器的虚拟主机列表?

有没有办法通过查询Apache服务器从服务器外部,即从另一台计算机获得Apache虚拟主机列表。

configuration和启用对mod_info的受限访问

从命令行你可以使用apachectl -S; 输出与下面类似。

$ apachectl -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:443 is a NameVirtualHost default server virtualhost1 (/etc/httpd/conf.d/virtualhost1:17) port 443 namevhost virtualhost1 (/etc/httpd/conf.d/virtualhost1:17) port 443 namevhost virtualhost2 (/etc/httpd/conf.d/virtualhost2:16) *:80 is a NameVirtualHost default server virtualdefault (/etc/httpd/conf/httpd.conf:144) port 80 namevhost virtualdefault (/etc/httpd/conf/httpd.conf:144) port 80 namevhost virtualhost2 (/etc/httpd/conf.d/virtualhost2:1) 

除非有人在服务器上实现了一个脚本,并使其可以访问,当然不是 – HTTP协议本身不具备这种function。 请注意,如果大多数pipe理员默认实施并激活了这种function,则这种function将被视为不必要的信息披露。 基本上,如果您是pipe理员/开发人员参与运行服务器,您可以从configuration中find; 如果你不是这是简单的,根本不关你的事。