En apache2 por diseño, cualquier solicitud http con un Host desconocido se dirigirá al primer VirtualHost cargado. ¿Hay alguna forma de desactivar esta función? Dicho de otra manera, quiero tener un servidor web donde el usuario solo pueda acceder a definiciones de VirtualHost con nombre explícito. Cualquier otro nombre de host no mencionado explícitamente en una línea ServerName o ServerAlias debe ignorarse en silencio.
es posible?
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>
Actualización: como se sugiere a continuación y en otros lugares, ignorar silenciosamente una solicitud puede no ser una buena idea y tal vez rompa los RFC para HTTP. Sin embargo, dado que los hosts virtuales están diseñados para simular tener múltiples servidores HTTP físicos separados, el enfoque de ignorar en silencio no me parece irrazonable. Sería lo mismo que el alojamiento virtual basado en IP y el cortafuegos de algunas de las IP (quizás no para todos los clientes).