Столкнулся с небольшой проблемой, но не понятной мне...
Стоит Debian свежий, последний.
Поставил Apache2.
По дефолту имеются две папки sites-available и sites-enable с файлом default, заделал его под себя, это идет как основной сайт.
<VirtualHost *:80>
ServerAdmin hid4msc@gmail.com
ServerName site.ru
DocumentRoot /var/www/main/
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/main>
Options None
AllowOverride None
Order allow,deny
allow from all
</Directory>
LogLevel warn
ErrorLog /var/log/apache2/error_main.log
CustomLog /var/log/apache2/access_main.log combined
</VirtualHost>
через некоторое время понадобилось добавить еще один виртуал хост
создаю файл /etc/apache2/sites-available/files
<VirtualHost *:80>
ServerAdmin hid4msc@gmail.com
ServerName files.site.ru
DocumentRoot /var/www/files/
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/files>
Options None
AllowOverride None
Order allow,deny
allow from all
</Directory>
LogLevel warn
ErrorLog /var/log/apache2/error_files.log
CustomLog /var/log/apache2/access_files.log combined
</VirtualHost>
и делаю симлинк соответственно в /etc/apache2/sites-enable/files
далее sudo /etc/init.d/apache2 reload
пробую зайти site.ru - всё окей
пробую зайти files.site.ru - всё окей
пробую зайти test.site.ru - и тут как бы нету такого сайта, я хотел бы чтобы по дефолту открывался site.ru в таком случае, а он открывает index.php из второго виртуал хоста...
если добавить третий виртуал хост, то при заходе на несуществующий опять же отдает index.php от второго...
далее вообще смех, удаляю симлинк /etc/apache2/sites-enable/files
создаю еще один виртуал хост /etc/apache2/sites-available/menu практически ТОЧНО ТАКОГО ЖЕ содержания:
<VirtualHost *:80>
ServerAdmin hid4msc@gmail.com
ServerName menu.site.ru
DocumentRoot /var/www/menu/
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/menu>
Options None
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error_menu.log
LogLevel warn
CustomLog /var/log/apache2/access_menu.log combined
</VirtualHost>
делаю симлинк /etc/apache2/sites-enable/menu
и соответственно перузагружаю apache2.conf
/etc/init.d/apache2 reload
пробую зайти test.site.ru в надежде что перекинет на файл index.php из menu.site.ru но этого не происходит(!!), открывет из основного вирутал хоста как мне и нужно, я вообще в замешательстве... подключаю снова sudo ln -s /etc/apache2/sites-available/files /etc/apache2/sites-enable/files и делаю /etc/init.d/apache2 reload
иду снова test.site.ru и что я вижу, а вижу я index.php из files.site.ru !!!!!
короче полный бред и я не понимаю... :(
как правильно настроить чтобы при заходе на не существующий поддомен открывался оcновной виртуал хост ?
что и где не так ???