Você pode usar Alias *
para capturar qualquer outro tráfego que não seja o permitido no seu host virtual; para isso, você deve usar na última posição um host virtual com *
o apelido.
Assim, apenas o domínio definido será exibido.
<VirtualHost *:80>
ServerName mywebsite.com
DocumentRoot /var/www/default
...
</VirtualHost>
<VirtualHost *:80>
ServerName another.mywebsite.com
DocumentRoot /var/www/another
...
</VirtualHost>
# /!\ THIS HAS TO BE ON THE LAST POSITION /!\
<VirtualHost *:80 *:443>
# [ Server Domain ]
ServerName localhost
ServerAlias *
# [ Cancel trafic ]
RewriteRule .* - [END,R=406]
# [ Custom Log ]
CustomLog ${APACHE_LOG_DIR}/other.log combined
</VirtualHost>
No meu exemplo, apenas mywebsite.com e another.mywebsite.com serão permitidos, todos os outros domínios ou IP terão o tráfego cancelado.
Para cancelar o tráfego, você pode usar um redirecionamento para -
e, em seguida, adicionar um código de erro, por exemplo, usei um RewriteRule para redirecionar para 406 Not Acceptable ( R=406
).
Aqui você pode encontrar a lista de códigos de redirecionamento:
https://fr.wikipedia.org/wiki/Liste_des_codes_HTTP