У дизайні apache2 будь-який http-запит з невідомим хостом буде спрямований на перший завантажений VirtualHost. Чи є спосіб відключити цю функцію? Інакше сказано, я хочу мати веб-сервер, на якому користувач може отримати лише чітко названі визначення VirtualHost. Будь-яке інше ім’я хоста, яке прямо не вказано в рядку ServerName або ServerAlias, слід мовчки ігнорувати.
Чи можливо це?
Listen 80
NameVirtualHost *
<VirtualHost _default_:*>
# Anything matching this host should be silently ignored.
</VirtualHost>
<VirtualHost *>
DocumentRoot /www/example1
ServerName www.example.com
</VirtualHost>
<VirtualHost *>
DocumentRoot /www/example2
ServerName www.example.org
</VirtualHost>
Оновлення: Як запропоновано нижче та в інших місцях, мовчання ігнорування запиту може бути не дуже хорошою ідеєю і, можливо, порушує RFC для HTTP. Однак, оскільки віртуальні хости призначені для імітації декількох окремих фізичних серверів HTTP, підхід беззвучного ігнорування не здається мені розумним. Це було б так само, як віртуальний хостинг на основі IP та брандмауер відключення деяких IP-адрес (можливо, не для всіх клієнтів).