VMWare fusion:从来宾连接到主机的 Web 服务器
Posted
技术标签:
【中文标题】VMWare fusion:从来宾连接到主机的 Web 服务器【英文标题】:VMWare fusion: connecting to host's web server from guest 【发布时间】:2011-03-15 04:22:44 【问题描述】:我是一名网络开发人员,我的开发平台是 Mac。我在 VMWare fusion 中安装了 Windows XP 的副本,用于测试目的并使用 IE 预览我的网站。我在我的 Mac 上运行 Apache,有几个子域,如 test.localhost 等。
如何从来宾操作系统访问主机操作系统上的网络服务器?
提前谢谢你。
【问题讨论】:
下面的解决方案都不适合我......直到我将正在运行的应用程序绑定到 0.0.0.0 而不是直接绑定到本地主机,在这个上浪费了太多时间:( 【参考方案1】:在 OS X 10.9 Mavericks 上使用 Fusion 6.0.2
在主机系统(Mac)中
关闭虚拟机
打开“虚拟机|网络适配器|网络适配器设置...”菜单
在“Bridget Networking”部分选择“Autodetect”:
-
打开您的虚拟机
在来宾系统中(Win7)
-
右键单击记事本应用程序,然后选择“以管理员身份运行”:
当 Win7 询问:“您要允许以下程序对此计算机进行更改吗?” 点击“是”按钮
导航至:“计算机 | 本地磁盘 (C:) | Windows | System32 | 驱动程序 | 等”
在“文件名:”字段右侧的下拉菜单中选择“所有文件”
双击“hosts”文件
在主机系统(Mac)中
-
打开您的系统偏好并选择“网络”;在您连接的界面中查找 Mac IP:
示例中为 192.168.1.106
在来宾系统中(Win7)
-
在记事本窗口中输入 Mac IP,然后输入您要在主机 (Mac) 系统中访问的站点:
在示例中我配置了两个站点:localhost 和 caeb.leo
-
打开浏览器,您将能够看到托管在您的主机系统上的网站:
希望对你有帮助!
【讨论】:
我希望我能在它应得的 20 或 30 次或更多次投票。 :) 是的!我们必须提高这个答案。接受的答案对我不起作用。 这适用于 High Sierra、VM Ware Fusion 10 和 Windows 10。在我的主机上,我正在运行 MAMP Pro 4.2.1 DNS 缓存链接已损坏。步骤:确保以管理员身份运行CMD
,然后运行ipconfig /flushdns
【参考方案2】:
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
然后,当你在 IE 中输入http://test.localhost/
时,它会路由到你 Mac 的 apache 虚拟主机。
【讨论】:
我想给这个答案一个拥抱。谢谢!【参考方案3】:Andrew's answer 虽然正确,但缺少重要部分,即 vmnet8
仅在客户操作系统设置为使用桥接网络选项时使用。
如果您的客户操作系统正在使用 NAT 网络选项,如本 Windows 主机示例所示,您将需要改用 vmnet1
。
在这种情况下,vmnet1
192.168.119.1 的 IP 允许访问主机网络服务器,而vmnet8
的 IP 无处可去。
【讨论】:
【参考方案4】:请注意,我为那些像我一样有与标题相同的问题但与将 Apache 作为原始本地安装运行的细节不完全相同的人提供此答案
请注意,这个答案是 Andrew 和 Camaleo 的答案的混合体,因为在我的设置中都没有工作(没有指向 Mac 的 ip 和桥接网络的“自动检测”由于某种原因没有工作?),不确定如果包含 Docker Machine 会导致打嗝
如果你的设置是这样的:
(主机)Mac(例如 ip 192.168.1.249) (访客)Docker 机器(例如 ip 192.168.99.102) Apache(80 端口) VMware 融合 10 (访客)Windows 10(示例 ip 192.168.68.142)步骤 1
在 Windows 10 VM 中以管理员身份打开记事本(右键单击记事本以获取该选项)。导航到C:\Windows\System32\drivers\etc
,而不是Text Documents(*.txt)
,选择All Files
。打开hosts
文件并为您的Docker 机器的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 错误问题
【讨论】:
以上是关于VMWare fusion:从来宾连接到主机的 Web 服务器的主要内容,如果未能解决你的问题,请参考以下文章
vmware 设置访客静态 ip 地址,主机通过 3G 调制解调器连接到专用网络
如何使用星号将 X-Lite 软电话从主机连接到来宾 vm?