我有一个本地测试/开发服务器(当然是HTTP),监听端口8000。
我在Linux上工作,所以为了在Internet Explorer 6、7、8等上测试该页面,我使用VirtualBox运行一个虚拟机;我还需要看看Firefox在windows环境下的外观(例如字体不同)。
在我的真实机器中,我只需使用URL打开网站http://localhost:8000,如何从虚拟机寻址此本地主机?
现在我的解决方法是使用IP地址。有更好的主意吗?
我有一个本地测试/开发服务器(当然是HTTP),监听端口8000。
我在Linux上工作,所以为了在Internet Explorer 6、7、8等上测试该页面,我使用VirtualBox运行一个虚拟机;我还需要看看Firefox在windows环境下的外观(例如字体不同)。
在我的真实机器中,我只需使用URL打开网站http://localhost:8000,如何从虚拟机寻址此本地主机?
现在我的解决方法是使用IP地址。有更好的主意吗?
当前回答
要在OSX上启用此功能,我必须执行以下操作:
关闭虚拟机。转到VirtualBox首选项->网络->仅主机网络->单击“+”图标。单击“确定”。选择您的框并单击“设置”图标->网络->适配器2->在“连接到:”下拉列表中,选择“仅主机适配器”,默认情况下,您的网络(vboxnet0)将显示在下面。单击“确定”。再次启动机箱后,您应该能够访问localhosthttp://10.0.2.2/
您可以通过localhost引用它,并通过将它们的引用添加到主机文件(C:\windows\system32\drivers\etc\hosts)来访问其他本地托管站点,如下所示:
10.0.2.2 localhost
10.0.2.2 subdomain.localhost
其他回答
macOS操作系统
我正在macOS(以前的OS X)上运行Virtual Box,使用Virtual Box在Windows等上测试IE。
转到Virtual Box中的IE并通过http://10.0.2.2对于本地主机,或http://10.0.2.2:3000对于localhost:3000。
我将网络设置保持为NAT,不需要如上所述的网桥。无需编辑任何配置文件。
如果您将适配器连接到NAT,现在将端口转发设置为本地端口是更好、更优雅的解决方案。
设置>网络>适配器>高级>端口转发
只需插入新规则并将主机端口和来宾端口设置为80(对于http)或22(对于ssh),依此类推。
然后,只需输入http://localhost
您可能还想将NAT切换到透明模式。
要在OSX上启用此功能,我必须执行以下操作:
关闭虚拟机。转到VirtualBox首选项->网络->仅主机网络->单击“+”图标。单击“确定”。选择您的框并单击“设置”图标->网络->适配器2->在“连接到:”下拉列表中,选择“仅主机适配器”,默认情况下,您的网络(vboxnet0)将显示在下面。单击“确定”。再次启动机箱后,您应该能够访问localhosthttp://10.0.2.2/
您可以通过localhost引用它,并通过将它们的引用添加到主机文件(C:\windows\system32\drivers\etc\hosts)来访问其他本地托管站点,如下所示:
10.0.2.2 localhost
10.0.2.2 subdomain.localhost
您很可能将虚拟机的网络设置为NAT。如果将网络设置为Bridged,则应该能够通过主机名访问主机。例如,如果您的主机名是“jsmith-Precision-7510”,并且您想打开http://localhost:3000/,您可以在http://jsmith-Precision-7510:3000/.
要查找主机名,请打开终端/控制台,然后运行命令hostname。您的主机名将在下一行输出。
有关如何将网络设置设置为Bridged的说明,请参阅VirtualBox文档。
如果您使用Virtual Box,您可以使用一行代码将Mac OSX(我认为是Linux)连接到虚拟windows机器-->我建议在终端中运行该程序之前停止该程序。
VBoxManage修改“您的VM名称”--natdnsostresolver1
我会注意到这是来自我正在运行的Dinghy文档,但它是一个虚拟盒子命令,所以只要它的虚拟盒子,它就不应该真正关心你使用什么