让没有虚拟主机的apache2链接到域的域名是否危险?是否可以配置apache来拒绝未知域?
例如:在虚拟主机中没有引用域,因此当apache2回答它时,它会占用服务器上引用的第一个虚拟主机。同样地,当我们输入服务器的IP地址时,第一个VH被用来回答请求。
一般来说,我不会认为它“危险”,更多的是由于您希望服务器如何表现。就个人而言,除非有理由不这样做,否则我总是阻止未知域名。
Apache可以通过简单地将“catch all”域放在虚拟主机配置文件的顶部(或者,如果您使用多个conf文件,在按字母顺序排列的第一个文件中)来拒绝未定义的域,并将该域配置为无条件地响应403 (或者您可以配置您认为合适的任何其他响应):
<VirtualHost *:80>
ServerName default
RewriteRule ^ - [F]
</VirtualHost>
<VirtualHost *:80>
ServerName example.com
# ...
</VirtualHost>