Я видел все другие вопросы по этой теме, но ни один из ответов не помог.
Ситуация: VPS на 1 IP, debian wheezy 7 работает с apache2.
Даже простой виртуальный хост не будет работать, как указано в "www.domain.net" с поддержкой сайтов:
<VirtualHost *:80> ServerName domain.net ServerAlias www.domain.net DocumentRoot /var/www/domain </VirtualHost>
Вывод apache2ctl -S:
VirtualHost configuration:
xx.xx.xxx.xxx:443 is a NameVirtualHost
default server xx.domain1.net (/etc/apache2/conf.d/owncloud5-ssl.conf:1)
port 443 namevhost xx.domain1.net (/etc/apache2/conf.d/owncloud5-ssl.conf:1)
xx.xx.xxx.xxx:80 oc.domain1.net (/etc/apache2/sites-enabled/oc.domain.net:8)
wildcard NameVirtualHosts and _default_ servers:
*:80 is a NameVirtualHost
default server domain1.net (/etc/apache2/sites-enabled/000-default:8)
port 80 namevhost domain1.net (/etc/apache2/sites-enabled/000-default:8)
port 80 namevhost mail.domain2.net (/etc/apache2/sites-enabled/mail.domain2.net:8)
port 80 namevhost domain2.net (/etc/apache2/sites-enabled/www.domain2.net:1)
Syntax OK
По-прежнему index.html в / var / www служит виртуальным хостом по умолчанию (domain1). Что действительно должно быть уловом всего виртуального хоста. Но domain2 и поддомены обоих доменов не подхватываются apache2. Все домены имеют A-имя в настройках DNS, все они указывают на один и тот же общедоступный IP-адрес. Все разрешается на этот ip и на виртуальный хост по умолчанию.
Если я помню, что это называется перекрытием виртуального хоста, когда я использовал виртуальный хост на основе имени, я решил проблему, создав простой виртуальный хост по умолчанию, подобный этому
<VirtualHost _default_:*>
DocumentRoot /www/default
</VirtualHost>
для получения дополнительной информации вы можете прочитать официальную документацию apache http://httpd.apache.org/docs/2.2/vhosts/examples.html