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

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

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

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


当前回答

如果您使用Virtual Box,您可以使用一行代码将Mac OSX(我认为是Linux)连接到虚拟windows机器-->我建议在终端中运行该程序之前停止该程序。

VBoxManage修改“您的VM名称”--natdnsostresolver1

我会注意到这是来自我正在运行的Dinghy文档,但它是一个虚拟盒子命令,所以只要它的虚拟盒子,它就不应该真正关心你使用什么

其他回答

在具有虚拟Windows7的Windows上,唯一对我有效的方法是使用NAT和端口转发(无法运行桥接连接)。我在这里找到了一个教程:http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/(向下滚动到“将端口转发到虚拟机”部分)。

通过这些更改,我可以通过“http://192.168.xx.x:8888/mywebsite“在我的虚拟机上的internet explorer 10中。

我在XAMPP控制面板>Netstat(“系统”)中找到了IP。

检查您是否可以使用以下命令访问父计算机:ipconfig(获取您的ip地址)

ping<ip>或telnet<ip><port>

如果无法访问端口,请尝试在父防火墙中添加允许本地端口的新入站规则。

然后我可以访问http://<ip>:<port>

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

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

苹果操作系统

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

10.0.2.2       localhost
10.0.2.2       127.0.0.1

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

获取运行Apache的计算机的IP(inet-addr:in ifconfig),并在虚拟机浏览器地址栏中输入。