Как настроить Apache для полного игнорирования ненастроенных имен хостов И обслуживания настроенных имен хостов?

Я использую Apache 2.4.29.

Если я установил 000-default.conf как это и включил его:

<VirtualHost *:80>
    ServerName default
    Redirect 404 /
    ErrorDocument 404 "Domain not configured on this server!!!!!!!!!"
</VirtualHost>

Затем все остальные виртуальные хосты в моем каталоге / etc / apache2 / sites-available (который я активировал с помощью a2ensite) также возвращают 404. Все равно 404.

Если я удалю 000 -default-conf, или, если я его посещу, любой запрос из любого домена будет принят Apache, и он будет обслуживаться другим моим блоком VirtualHost в /etc/apache2/sites-available/sub.domain. com.conf файл, который выглядит следующим образом

<VirtualHost :*80>
    ServerName sub.domain.com
    # Some other stuff
</VirtualHost>

Любой запрос, сделанный на IP-адрес моего сервера, независимо от HostName в заголовке запроса, будет обработан и получит ответ от этого блока. Я хотел бы, чтобы запросы для имен хостов, которые не являются sub.domain.com, получают ответ 404.

Как это сделать?

0
задан 22 December 2020 в 23:28
1 ответ

По-видимому, это была проблема с тем, что Docker не следовал символическим ссылкам с сайтов с включенными на сайты-доступные, потому что два каталога были на разных томах. Я думаю, что в этом была проблема. Я установил оба каталога так, чтобы они указывали на один и тот же том, и, похоже, теперь он работает. Я устал, поэтому я не уверен, но я думаю, что это решило проблему. Возникла идея использовать один и тот же том для обоих здесь: https://stackoverflow.com/questions/31881904/docker-follow-symlink-outside-context/56492815#56492815 Ну, по-видимому, по ссылке выше, он этого не сделал, но это вдохновило меня на это

.
0
ответ дан 22 December 2020 в 21:40

Теги

Похожие вопросы