Моя проблема заключается в следующем: у меня есть виртуальная машина Oracle с debian, на которой запущен apache2. Этот apache будет обрабатывать два веб-сервера, поэтому мой conf выглядит так:
< VirtualHost *:80 > (no spaces, serverfault just shows it wrong without)
ServerAdmin webmaster@localhost ServerName site1.hostpc.domain.com DocumentRoot /var/www/html/site1
ErrorLog ${APACHE_LOG_DIR}/site1/error.log CustomLog ${APACHE_LOG_DIR}/site1/access.log combined
< /Virtualhost >
< VirtualHost *:80 >
ServerAdmin webmaster@localhost ServerName site2.hostpc.domain.com DocumentRoot /var/www/html/site2
ErrorLog ${APACHE_LOG_DIR}/site2/error.log CustomLog ${APACHE_LOG_DIR}/site2/access.log combined
< /Virtualhost >
где hostpc - это имя hostpc, а domain.com - локальный домен.
Я перенаправил порт 80 через NAT с виртуальной машины на хост-компьютер (TCP, гостевой порт 80 -> хост-порт 80)
Итак, вот моя проблема: когда я перехожу на site1.hostpc.domain.com или site2.hostpc.domain.com в виртуальной машине, разные веб-сайты отображаются отлично, но когда я пытаюсь открыть site1.hostpc.domain.com или site2.hostpc.domain.com на моем хост-компьютере он не может разрешить DNS веб-сайта. Когда я открываю hostpc.domain.com, он показывает site1 в порядке, но нет возможности получить site2.
Я много пробовал, но не могу запустить. (PS: мне нужно использовать NAT, мостовая сеть отключит мой хост-компьютер от сети)
Вы должны перенаправить порт 80 с хост-машины на порт 80 виртуальной машины. Убедитесь, что записи вашего хоста верны