Я использую виртуальную машину сервера Ubuntu 16.04, на которой мне нужно настроить следующие домены:
- maindomain.com:80
- otherport.com:8080
Каждый домен указывает на IP-адрес виртуальной машины, но, очевидно, на другой каталог.
Мне удалось получить bind9, чтобы эти домены указывали на IP-адрес виртуальной машины, когда виртуальная машина является DNS-сервером, и я настроил Apache для получения следующих результатов:
Хороший:
- maindomain.com:80 возвращает индекс основного домена
- otherport.com:8080 возвращает индекс другого порта
Плохой:
- maindomain.com:8080 возвращает индекс другого порта
- otherport.com:80 возвращает индекс основного домена
Если я поставлю оба порта на порт 80, каждый будет разделен, но если я использую разные порты, кажется, что Apache просто заботится о порте.
Как я могу заблокировать доступ к maindomain.com:8080 и otherport.com:80?
файл maindomain.com.conf:
<VirtualHost maindomain.com:80>
ServerAdmin webmaster@localhost
ServerName maindomain.com
ServerAlias www.maindomain.com maindomain.com
DocumentRoot "/var/www/html/maindomain"
<Directory /var/www/html/maindomain>
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
файл otherport.com.conf:
<VirtualHost otherport.com:80>
ServerAdmin webmaster@localhost
ServerName otherport.com
ServerAlias www.otherport.com otherport.com
DocumentRoot "/var/www/html/otherport"
<Directory /var/www/html/otherport>
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
и<VirtualHost *:8080>
с правильнымServerName
, а также<VirtualHost *>
как ловушку. - person Deadooshka   schedule 30.04.2017<VirtualHost>
. Речь идет о тривиальной конфигурации на основе имени с VirtualHost по умолчанию, например<VirtualHost _default_:*>
. Это будет работать, если не возникнет проблем с конфигурацией сети виртуальной машины. - person Deadooshka   schedule 01.05.2017