apache httpd.conf – 虚拟主机configuration

我是新来的Apache和httpd.conf

我遇到的问题是我需要不同的网站去不同的虚拟主机configuration,如果只有IP被请求,它需要去根index.html

这适用于虚拟主机:

<VirtualHost *:80> DocumentRoot /var/www/html/bali-accommodation.co ServerName www.bali-accommodation.co </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/balibeach.co ServerName www.balibeach.co </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/dating-website.co ServerName www.dating-website.co </VirtualHost> 

但是,当我只是指定IP到www.XXX.XXX.XXX.XXX(追加www)。

我知道在网站有一个.htaccessredirect,增加了www,但我不希望IP进入虚拟主机configuration。

我试着把它添加到Vhostconfiguration的顶部:

 <VirtualHost *:80> DocumentRoot /var/www/html ServerName localhost </VirtualHost> 

与上面它显示index.html完美,但所有的网站都进入这个捕获所有。

我也试过这个网站虚拟主机:

DocumentRoot /var/www/html/bali-accommodation.co ServerName www.bali-accommodation.co

我已经尝试了上面有和没有在第一行'www'失败。

有没有办法让虚拟主机工作的域名,如果有人只是inputIP它去根index.html? /var/www/html/index.html?

谢谢你,亚当

Apache按照它们为了匹配而定义的顺序search虚拟主机。 如果没有其他主机在ServerName或ServerAlias指令中匹配,则Apache将提供已定义的第一个虚拟主机。 你可以定义一个catchall虚拟主机作为最后一个

 <VirtualHost *:80> DocumentRoot /var/www/html ServerName SomeName ServerAlias * </VirtualHost> 

这将匹配任何东西。