我的主机上有一个在漫游虚拟机内运行的Web服务器(A)。我希望另一台机器(B)能够通过局域网查看网站。
在我的vagrant配置中,我有以下相关的配置行:
config.vm.network "public_network", ip: "192.168.33.10"
config.vm.network "forwarded_port", guest: 80, host: 8080
在主机上的Windows主机文件中(A)我有:
192.168.33.10 awesomewebsite.dev
在LAN机器的主机文件中(b)我指向机器A的IP
172.123.12.12 awesomewebsite.dev
我在VM中有一个apache vhost文件,其中包含以下配置:
<VirtualHost *:80>
ServerName awesomewebsite.dev
DocumentRoot /var/www/awesomesite
ErrorLog ${APACHE_LOG_DIR}/awesome.log
CustomLog ${APACHE_LOG_DIR}/awesome.log combined
</VirtualHost>
当我在主机上访问awesomewebsite.dev时,它可以工作。但是当我在机器B上访问时,它似乎无法到达机器A.当我在机器B上访问awesomesite.dev:8080时,它最终会出现在错误的Web目录中并获得权限错误。
我添加了以下内容(仅用于测试,我知道它的安全性不高)
<Directory "/var/www">
Allow from all
</Directory>
我需要机器B通过没有端口的确切虚拟主机访问机器A上的VM。这可能吗?
答案 0 :(得分:0)
使用公共网络,它应该只使用以下
192.168.33.10 awesomewebsite.dev
机器B上的。该机器应该能够看到主机A上运行的任何虚拟机,并将其视为一台独立的机器(它在网络上注册了自己的网络接口)
在使用静态IP时,您无需执行任何转发端口,因为您可以直接从IP访问任何端口