apacheconfiguration – 列出的虚拟主机项目,但无法find

我使用Ubuntu 14.04,由tasksel安装Apache。

apache2ctl -S表示www.ijiameng.com存在于不同的conf文件中,默认的优先级较高,如下所示:

 sunjizu@HP-Pavilion-g4-Notebook-PC:~$ apache2ctl -S VirtualHost configuration: *:80 is a NameVirtualHost default server www.ijiameng.net (/etc/apache2/sites-enabled/000-default.conf:1) port 80 namevhost www.ijiameng.net (/etc/apache2/sites-enabled/000-default.conf:1) port 80 namevhost foo.my (/etc/apache2/sites-enabled/foo.my.conf:1) port 80 namevhost www.ijiameng.net (/etc/apache2/sites-enabled/ijiameng.net.conf:1) alias ijiameng.net ServerRoot: "/etc/apache2" Main DocumentRoot: "/var/www" 

但是/etc/apache2/sites-enabled/000-default.conf不包含与www.ijiameng.com相关的任何内容,如下所示:

 sunjizu@HP-Pavilion-g4-Notebook-PC:/etc/apache2/sites-enabled$ cat 000-default.conf <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # vim: syntax=apache ts=4 sw=4 sts=4 sr noet </VirtualHost> 

结果是非常烦人的,就是当我浏览http://www.ijameng.net ,浏览器直接进入默认configuration/var/www/ 。 但ijiameng.net运行良好,因为没有冲突的configuration。

任何东西都隐藏在000-default.conf

000开头的默认configuration以更高的顺序列出,因为它是第一个被包含的,因为启用的站点将以数字顺序,然后按字母顺序被读取。 这可以通过指定多个包含条目来控制顺序来覆盖:

 Include /etc/apache2/sites-enabled/ijiameng.net.conf Include /etc/apache2/sites-enabled/foo.my.conf Include /etc/apache2/sites-enabled/000-default.conf 

www.ijiameng.net在默认configuration中显示的原因可能是因为它与您的主机共享IP地址。

请发布/etc/apache2/sites-enabled/ijiameng.net.confconfiguration,好像默认的configuration文件正在接收而不是vhost conf,那么问题出在vhost条目上。