Вы можете использовать Alias *
для перехвата любой другой трафик, кроме разрешенного thoose на вашем виртуальном хосте, для этого вы должны использовать в качестве последнего*
псевдонима виртуальный хост с последней позицией .
Так будет обслуживаться только определенный домен.
<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>
В моем примере будут разрешены только mywebsite.com & another.mywebsite.com, все остальные домены или IP-адреса будут отменены.
Чтобы отменить трафик, вы можете использовать перенаправление -
и затем добавить код ошибки, например, я использовал RewriteRule для перенаправления на 406 Not Acceptable ( R=406
).
Здесь вы можете найти список кодов перенаправления:
https://fr.wikipedia.org/wiki/Liste_des_codes_HTTP