我有一个本地测试/开发服务器(当然是HTTP),监听端口8000。

我在Linux上工作,所以为了在Internet Explorer 6、7、8等上测试该页面,我使用VirtualBox运行一个虚拟机;我还需要看看Firefox在windows环境下的外观(例如字体不同)。

在我的真实机器中,我只需使用URL打开网站http://localhost:8000,如何从虚拟机寻址此本地主机?

现在我的解决方法是使用IP地址。有更好的主意吗?


当前回答

在虚拟箱中

将网络设置为桥接网络转到高级设置混杂模式:全部允许

现在,棘手的问题是本地主机,如果您从Node.js运行,请将IP地址设置为0.0.0.0,然后查找您自己的IP地址,例如cmd:ipconfig-->10.0.0.3

键入带有端口号的地址。它会奏效的。

其他回答

我通过在网络下的Virtualbox设置中添加端口转发来解决问题。主机IP设置127.0.0.1端口:8080访客ip:为网站提供任何ip(例如10.0.2.5)端口:8080现在从来宾计算机访问http://10.0.2.5:8080使用IE

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,不需要如上所述的网桥。无需编辑任何配置文件。

苹果操作系统

如果您想在mac上使用Virtualbox设置windows环境,只需使用适配器上的默认NAT设置,在windows VM中,转到hosts文件并添加以下内容:

10.0.2.2       localhost
10.0.2.2       127.0.0.1

与上面的答案不同,重要的是要包含这两行,否则它将不起作用。

实际上,user477494的答案原则上是正确的。

我已经在其他环境(OS X主机-虚拟Windows XP)中应用了相同的逻辑,这就是诀窍。我确实必须循环主机LAMP堆栈以获取要解析的IP地址和Apache端口,但一旦我明白了这一点,我就笑了。

谷歌搜索结果显示:http://data.agaric.com/localhost-from-virtualbox-xp-install-ubuntu

建议使用IP:http://10.0.2.2,这对我有用。

因此,我编辑了hosts文件C:\windows\system32\drivers\etc\hosts,并添加了以下条目:

10.0.2.2   outer

如果您在IE8上进行测试,请记住在地址栏中输入http://。直接放ip是行不通的。

例如:

http://10.0.2.2:3000/