Возникли проблемы при настройке виртуального хоста в apache2
У меня есть некоторые проблемы при настройке virtualhost в apache2. У меня есть три субдомена (a.test.com, b.test.com, c.test.com), которые подключены к одному серверу. Я настраиваю virtualhost, как показано ниже, чтобы каждый поддомен показывал другой сайт.
# Content of /etc/apache2/sites-available/a.test.com.conf
<VirtualHost *:80>
ServerName a.test.com
DocumentRoot /var/www/a
</VirtualHost>
# Content of /etc/apache2/sites-available/b.test.com.conf
<VirtualHost *:80>
ServerName b.test.com
DocumentRoot /var/www/b
</VirtualHost>
Причина того, что c.test.com.conf не существует, состоит в том, что я хочу показать 404 notfound или соединение отклонено (причина c.test.com не решена), когда клиент пытается получить доступ к c.test.com. Но когда клиент пытается получить доступ к c.test.com, он показывает результат a.test.com.
Я уже отключил 000 по умолчанию, но эти настройки не работают, как я ожидал. Что я должен сделать, чтобы c.test.com показывал 404 notfound или в соединении отказано?
Это результат ls /etc/apache2/sites-available
000-default.conf
a.test.com.conf
b.test.com.conf
Это результат ls /etc/apache2/sites-enabled
a.test.com.conf
b.test.com.conf
1 ответ
Если соответствующий виртуальный хост не найден, будет использоваться первый из перечисленных виртуальных хостов.
Используйте виртуальный хост в 000-default.conf
настроить поведение для доменов, которые не соответствуют ни одному из ваших других виртуальных хостов. Например, используйте несуществующий корень документа.