我有一个本地测试/开发服务器(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地址。 任何更好的想法?
谷歌搜索把这个了: 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/
我在Mac OS(以前OS X)上运行的虚拟盒,使用虚拟盒测试IE在Windows上,等
转到IE在虚拟盒和访问localhost
通过http://10.0.2.2
为localhost
,或http://10.0.2.2:3000
为localhost:3000
。
我一直在网络设置,NAT,不需要桥在我的情况下,上述建议。 有没有必要修改任何配置文件。
要在OSX启用此我必须做到以下几点:
VirtualBox Preferences -> Network -> Host-only Networks ->
点击“+”图标。 单击确定。 "Settings" icon -> Network -> Adapter 2 ->
在“附:”下拉列表中,选择“仅主机适配器”和网络( vboxnet0
)应低于默认情况下显示出来。 单击确定。 http://10.0.2.2/
你可以参考它通过localhost
加入他们引用的hosts文件和访问其他localhosted网站( C:\windows\system32\drivers\etc\hosts
),如下所示:
10.0.2.2 localhost
10.0.2.2 subdomain.localhost
你最有可能有你的虚拟机的网络设置为NAT。 如果您的网络设置为桥接,你应该能够通过它的主机名来访问您的主机。 例如,如果你的主机名是“jsmith的精密-7510”和你想打开HTTP://本地主机:3000 / ,您将能够查看该网页的http:// JSMITH精密-7510:3000 / 。
要找到你的主机名,打开一个终端/控制台,然后运行命令hostname
。 您的域名将在下一行输出。
请参阅VirtualBox的文档关于如何将网络setttings设置为桥接指令。
我发现10.0.2.2:<port>
的作品,但只有在混杂模式是否设置正确。 我安装后VM,我就去设置>网络>适配器1。
NAT的默认设置,并混杂模式下拉菜单将被禁用。 我从NAT切换到桥接适配器,这使混杂模式下拉列表,然后从“拒绝”改变值设定为“允许VM”。 然后我切换回NAT,它禁用混杂模式了,但保留了新的价值。
只有在此变更后,我能够启动我的虚拟机,看看我的主机上localhost:<port>
我的VM在10.0.2.2:<port>
。
我不得不进入VirtualBox和改变我的网络设置为“NAT”。 在那之后,我能够打localhost
通过跑我的主机上从我VirtualBox上模拟器http://10.0.2.2:3000
如果您有连接到NAT适配器,如今它的更好,更完美的解决方案,以端口转发设置为本地端口。
Settings
> Network
> Adapter
> Advanced
> Port forwarding
只需插入新的规则,并设置Host port
和Guest port
到80
(用于HTTP)或22
(SSH的),等等。
然后你就可以只输入访问该机器http://localhost
您可能还需要NAT切换到透明模式。
苹果系统
如果你想建立与VirtualBox的Windows环境在Mac上,只使用默认的NAT设置在适配器上,并在您的Windows虚拟机,去hosts文件,并添加以下内容:
10.0.2.2 localhost
10.0.2.2 127.0.0.1
不同于上述问题的答案,它包括两条线是非常重要的,否则将无法正常工作。
您需要编辑您的主机您的Windows虚拟机上的文件您的本地主机做同样的方式:
C:\ WINDOWS \ SYSTEM32 \ DRIVERS \ ETC \主机
并链接您的虚拟主机为10.0.2.2,如果你只是使用本地主机然后更换
127.0.0.1 localhost通过10.0.2.2本地主机
例如:
10.0.2.2 localhost
10.0.2.2 local.site1.com
10.0.2.2 local.site2.com
这告诉你的虚拟机指向本地机器的域名。
你并不需要修改hosts文件或任何虚拟箱配置。 请NAT设置。 转到您的Windows实例和运行“CMD”或开放的cmd.exe。 执行命令“IPCONFIG”,并获得默认网关 IP地址。 浏览http://10.0.2.2:8080在Windows IE浏览器,你会看到比你的Mac的Safari同样的http://本地主机:8080 /或http://127.0.0.1:8080
几件事的组合最终得到的东西在我结束工作。 运行MacOSX上的烧瓶中的服务器。
在我的Windows VM我编辑的hosts文件:
C:\windows\system32\drivers\etc\hosts
10.0.2.2 outer
关闭VM并在我的Mac在VirtualBox中:
VirtualBox > preferences > Network > Host-only Networks > +
添加网络vboxnet1
My_VM > settings > Network > Adapter 1
。 Enable Network Adapter
和一套Attached to:
到Bridged Adapter
。 Advanced > Promiscuous Mode:
以Allow VMs
。 OK
My_VM > settings > Network > Adapter 1
。 Attached to:
回到NAT
。 然后我去Adapter 2
Attached to:
到Host-only Adapter
,并选择以前添加的网络vboxnet1
。 我开始我的Mac上我的服务器上运行的127.0.0.1:5000
,这是现在我的虚拟机可访问的http://10.0.2.2:5000
什么样的人的噩梦来测试IE在Mac上。 如何是不是有一个更简单的方法?
我解决了网络环境下在VirtualBox中设置添加端口转发。 主机IP组127.0.0.1端口:8080客户IP:从客户机访问8080现在:提供任何IP的网站(比如10.0.2.5)端口http://10.0.2.5:8080使用IE
在虚框为上述上,你可以加入这一行hosts文件
10.0.2.2 outer
但保存它,如果你没有管理员就在你的虚拟机只是移动hosts文件到桌面上,然后对其进行编辑以添加行10.0 ....外,保存文件,并移动到原来的位置。
检查如果你可以打你的父母机器: ipconfig
(让您的IP地址)
ping <ip>
或telnet <ip> <port>
如果你不能得到的端口,尝试在父母的防火墙允许本地端口添加新的入站规则。
当时我能够访问http://<ip>:<port>
在虚拟箱
现在棘手位是本地主机,如果从Node.js的运行设置IP地址为0.0.0.0,然后查找自己的IP地址,例如CMD:IPCONFIG - > 10.0.1.3
在端口号输入该地址。 它会奏效。
一般步骤:
在Windows上使用虚拟的Windows 7只为我工作的事情是使用NAT和端口转发 (无法得到桥接方式运行)。 我发现了一个教程在这里: http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/ (向下滚动到与“ 转发端口到虚拟机 ”)的一部分。
有了这个变化,我可以达到XAMPP网站,“ 8888 / mywebsite HTTP://192.168.xx.x我的虚拟机上的Internet Explorer 10”。
我发现在IP XAMPP控制面板>用netstat(“系统”)。
如果你使用虚拟盒,你可以将Mac OSX(我认为Linux的)到你的虚拟Windows计算机使用的一行代码 - >我建议在终端运行此之前停止箱。
VBoxManage modifyvm "YOUR VM NAME" --natdnshostresolver1 on
我会注意到,这是来自帆船的文档,我正在运行,但它是一个虚框的命令,所以应该不是真正关心你用什么,只要它的虚拟箱
我需要在本地主机上,而不是一些奇怪的IP上运行。
1)从你的Mac终端,做iconfig -a
查看当地的IP地址。 这也许是最后一个。
en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=10b<RXCSUM,TXCSUM,VLAN_HWTAGGING,AV> ether 38:c9:86:32:0e:69 inet6 fe80::ea:393e:a54f:635%en7 prefixlen 64 secured scopeid 0xe inet 10.1.5.60 netmask 0xfffffe00 broadcast 10.1.5.255 nd6 options=201<PERFORMNUD,DAD> media: autoselect (1000baseT <full-duplex,flow-control>) status: active
如10.1.5.60
2)启动你的窗口形象。 开始>键入cmd
得到一个终端
3) notepad c:\windows\system32\drivers\etc\hosts
4)添加以下行10.1.5.60 localhost
5)打开IE,和下面的网址应该打在服务器上的Mac上运行: http://localhost:3000/
获取IP运行Apache的机器(INET地址:在ifconfig
)和虚框浏览器地址栏输入。
事实上,user477494的答案是正确的原则。
我已经应用在其它环境(OS X主机 - 虚拟的Windows XP)相同的逻辑,并且做的伎俩。 我确实有周期主机LAMP堆栈,以获得IP地址和Apache端口来解决,但有一次,我想通了这一点,我在笑。