从php脚本显示虚拟主机?

时间:2013-03-26 20:33:04

标签: php apache2 vhosts

我希望能够构建一个脚本,显示在我的Apache(Ubuntu)开发机器下运行的所有虚拟主机。

到目前为止,我还没有找到任何示例或任何接近我想要的东西,只是:

“显示在此计算机上运行的所有虚拟主机”。 (ServerName,Alias等)。

我原以为我可以读取/ etc / apache2 / sites-available文件夹中包含vhosts的所有conf文件,但在走这条路之前,我想我先问这里。

1 个答案:

答案 0 :(得分:2)

您可以使用apachectl(或apache2ctl)命令通知httpd Apache服务器转储虚拟主机信息:

 apache2ctl -St

以下是使用apachectl发送信号和httpd flags的链接。

这是我在Apache / Ubuntu系统上看起来的样子(我是一个拥有大量虚拟主机的Web开发人员):

VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server 127.0.1.1 (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost adaleco (/etc/apache2/sites-enabled/adaleco:1)
         port 80 namevhost amcham (/etc/apache2/sites-enabled/amcham:1)
         port 80 namevhost cake (/etc/apache2/sites-enabled/cake:1)
         port 80 namevhost cakeplate (/etc/apache2/sites-enabled/cakeplate:1)
         port 80 namevhost coord (/etc/apache2/sites-enabled/coord:1)
         port 80 namevhost dru1 (/etc/apache2/sites-enabled/dru1:1)
         port 80 namevhost flaming (/etc/apache2/sites-enabled/flaming:1)
         port 80 namevhost flaming6 (/etc/apache2/sites-enabled/flaming6:1)
         port 80 namevhost food (/etc/apache2/sites-enabled/food:1)
         port 80 namevhost fun (/etc/apache2/sites-enabled/fun:1)
         port 80 namevhost marc (/etc/apache2/sites-enabled/marc:1)
         port 80 namevhost sugar (/etc/apache2/sites-enabled/sugar:1)
         port 80 namevhost vol (/etc/apache2/sites-enabled/vol:1)
         port 80 namevhost xmas (/etc/apache2/sites-enabled/xmas:1)
Syntax OK