我是一名网络开发人员,我的开发平台是Mac。我已经在VMWare融合中安装了一个Windows XP副本用于测试目的,并使用IE来预先安装我的网站。我在我的Mac上运行Apache,有几个子域,比如 test.localhost 等。
如何从来宾操作系统访问主机操作系统上的Web服务器?
提前谢谢。
答案 0 :(得分:50)
在OS X 10.9 Mavericks上使用Fusion 6.0.2
关闭虚拟机
打开“虚拟机|网络适配器|网络适配器设置...”菜单
在“Bridget Networking”部分选择“Autodetect”:
醇>当Win7问:“你想让以下程序对这台电脑进行更改吗?” 点击“是”按钮
答案 1 :(得分:46)
VMWare Fusion在Mac上注册了一个IP地址,您可以使用它来指向虚拟机中的主机。您可以使用ifconfig vmnet8
找到它。我的 192.168.36.1 ,你的可能是一样的。
如果您正在使用apache虚拟主机,并且尝试从虚拟机上的此地址获取http,则可能会显示默认的apache页面。您需要在Windows主机上映射域名:
在记事本中打开C:\WINDOWS\system32\drivers\etc\hosts
并添加主机名,每行1个:
192.168.36.1 test.localhost
然后,当您将http://test.localhost/
放入IE时,它将路由到Mac的apache虚拟主机。
答案 2 :(得分:13)
Andrew's answer虽然正确,却缺少重要部分,即vmnet8
仅在客户操作系统设置为使用桥接网络选项时使用。
如果您的来宾操作系统正在使用NAT网络选项,如此Windows主机示例中所示,则需要使用vmnet1
。
在这种情况下,vmnet1
192.168.119.1的IP允许访问主机网络服务器,而vmnet8
的IP无处可去。
答案 3 :(得分:0)
请注意,我为那些和我一样有问题的人提供了这个答案,但没有与运行Apache作为原始本地安装完全相同的具体细节
双重说明,这个答案是Andrew和Camaleo的答案的混合,因为我的设置都没有起作用(没有指向Mac的IP和桥接网络""#34 ; Autodetect"由于某种原因没有工作?),不确定是否包含Docker Machine会导致打嗝
如果你的设置是这样的话:
在Windows 10 VM中,以管理员身份打开记事本(右键单击记事本作为选项)。导航至C:\Windows\System32\drivers\etc
,而不是Text Documents(*.txt)
选择All Files
。打开hosts
文件,为Docker Machine的IP添加主机条目(通过docker-machine ls
)。根据我们上面的示例设置,该行看起来像这样:
192.168.99.102 myapp.test # or some other fitting name
保存更改。
注意:在进行网络更改时,无需在VMware Fusion 10中停止或重新启动虚拟机。
从VMware Fusion菜单中选择Virtual Machine
/ Network Adapter
/ Network Adapter Settings
。选择Share with my Mac
。
如果"与我的Mac共享"已经选中,选择一个不同的网络适配器选项(如桥接网络自动),然后重新选择"与我的Mac共享"确保主机文件更改
通过ping所需地址(例如" myapp.test"如上所示)或打开Edge / Chrome检查网页是否加载
,从Windows VM中进行测试更改 请注意,建议使用以.test
结尾的域名,否则Chrome可能仍会出现HSTS错误问题