我有一个本地测试/开发服务器(当然是HTTP),监听端口8000。
我在Linux上工作,为了在Internet Explorer 6、7、8等浏览器上测试页面,我使用VirtualBox运行虚拟机;我还需要在Windows环境下查看Firefox的显示效果(例如字体不同)。
在我的实际机器上,我只需使用URL http://localhost:8000
打开网站,如何从虚拟机中访问本地主机呢?
目前我的解决方法是使用IP地址。有更好的建议吗?
我有一个本地测试/开发服务器(当然是HTTP),监听端口8000。
我在Linux上工作,为了在Internet Explorer 6、7、8等浏览器上测试页面,我使用VirtualBox运行虚拟机;我还需要在Windows环境下查看Firefox的显示效果(例如字体不同)。
在我的实际机器上,我只需使用URL http://localhost:8000
打开网站,如何从虚拟机中访问本地主机呢?
目前我的解决方法是使用IP地址。有更好的建议吗?
您需要像为本地主机机器编辑Hosts文件一样,在Windows虚拟机上编辑该文件:
C:\WINDOWS\system32\drivers\etc\hosts
并将您的虚拟主机链接到10.0.2.2。如果您只是使用本地主机,则用“10.0.2.2 localhost”替换“127.0.0.1 localhost”。
例如:
10.0.2.2 localhost
10.0.2.2 local.site1.com
10.0.2.2 local.site2.com
这会告诉您的虚拟机将这些域名指向您的本地计算机。
C:\windows\system32\drivers\etc\hosts
10.0.2.2 outer
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
。127.0.0.1:5000
上,现在可以通过虚拟机上的http://10.0.2.2:5000
访问它。rails s -b 127.0.0.1
启动了我的Rails服务器,并从所有VMs访问它的地址为http://10.0.2.2:3000
,它可以正常工作。我想知道上面的设置更改是否在回滚后仍然存在。 - Manu Kanthan10.0.2.2 outer
如果您的虚拟机没有管理员权限,请将hosts文件移动到桌面,然后编辑以添加10.0....outer这一行,保存该文件,并将其移回原处即可。
检查您是否可以使用以下命令连接到父机器:
ipconfig
(获取您的IP地址)
ping <ip>
或 telnet <ip> <port>
如果无法访问端口,请尝试在父防火墙中添加新的入站规则以允许本地端口。
然后,您就可以访问 http://<ip>:<port>
一般步骤:
我需要在本地主机上运行,而不是一些奇怪的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)启动您的Windows映像。开始 > 输入cmd
以获取终端。
3) notepad c:\windows\system32\drivers\etc\hosts
4) 添加以下行
10.1.5.60 localhost
5) 打开IE,输入以下URL,应该可以访问在您的Mac上运行的服务器:http://localhost:3000/
在Windows上,使用虚拟的Windows 7系统,唯一有效的方法是使用NAT和端口转发(无法运行桥接连接)。我在这里找到了一个教程:http://www.howtogeek.com/122641/how-to-forward-ports-to-a-virtual-machine-and-use-it-as-a-server/(向下滚动到“将端口转发到虚拟机”的部分)。
通过这些更改,我可以在我的虚拟机上的Internet Explorer 10中使用“http://192.168.xx.x:8888/mywebsite”访问xampp网站。
我在XAMPP控制面板的Netstat(“系统”)中找到了IP地址。
如果您使用Virtual Box,您可以使用一行代码将Mac OSX(我认为还有Linux)连接到您的虚拟Windows机器 -> 我建议在终端中运行此命令之前停止该虚拟机。
VBoxManage modifyvm“YOUR VM NAME”--natdnshostresolver1 on
我要注意的是,这是来自Dinghy文档的内容,我正在运行它,但它是一个Virtual Box命令,所以实际上不应该关心您使用什么,只要它是Virtual Box即可。