如何从访客机器访问主机?
我刚刚使用VMware Fusion在我的Mac上创build了一个新的Windows XP虚拟机。 VM正在使用NAT来共享主机的Internet连接。
如何访问Rails应用程序,可以使用http://localhost:3000
访问Mac本身的应用程序?
在XP机器上,find你的IP地址,进入命令提示符并input“ipconfig”。 尝试用1或2replace最后一个数字。例如,如果您的IP地址是192.168.78.128,请使用http://192.168.78.1:3000 。
您可以使用主机的Mac(或networking上的任何其他Mac)“本地”名称:
HTTP://macname.local:3000 /
其中macname是您的主机(或其他所需的)Mac的networking名称。
对于未来的访问者:一旦你已经知道了IP地址,你可以添加一个条目到位于C:\ Windows \ system32 \ drivers \ etc \ hosts的Windows主机文件,以将IP地址映射到(虚拟)服务器名称。 像这样添加一行:
192.168.78.1 myrubyapp
现在你可以在地址为http:// myrubyapp:3000的 IE中访问该站点
如果你在Apache下使用虚拟主机,你需要提供正确的服务器名称。
由于这个问题是相当古老的,并提到XP,这是一个新的操作系统的替代品;
如果您将Vista或Windows 7作为来宾操作系统,并且通过Apache在Host中设置了虚拟主机,请按照以下步骤进行设置:
在主机操作系统中,您需要确保通过NAT完成networking连接。
- 右键单击虚拟机窗口中的networking图标(右下angular)
- select“NAT”
- select“连接”
- 等待来宾操作系统重新连接到networking
然后,在Guest OS中;
- 点击开始>networking>networking和共享中心
- 点击networking连接旁边的“查看状态”
- 点击“详情”
- find“IPv4默认网关”
- 打开写字板
- 编辑C:\ Windows \ System32 \ drivers \ etc \ hosts
-
在文件中添加一行,例如:
[default-gateway-IP] www.example.com [default-gateway-IP] example.com
-
保存
- 尝试在IE中打开
http://www.example.com
或http://example.com
- 在XP机器上,开始 – >连接到 – >显示所有连接。
- 双击本地连接。
- 点击支持选项卡。
- 采取默认网关IP
<gateway-ip
>,并在您的浏览器中打http://<gateway-ip
>:3000。
问题:你必须在地址中inputhttp://或者IE会给你“网页无法显示”。
对于Django,执行以下操作非常重要:
./manage.py runserver [default-gateway-IP]:8000
因为
https://docs.djangoproject.com/en/dev/ref/django-admin/
请注意,您的networking上的其他计算机无法访问默认IP地址127.0.0.1。 要使开发服务器可以在networking上的其他计算机上查看,请使用自己的IP地址(例如192.168.2.1)或0.0.0.0或::(启用IPv6)。
我花了一个小时试图让这个工作按照SO的步骤进行,但是我的结果有点不一样。
VMWare设置
1.)将VMWare连接设置为NAT
2.)运行> cmd> ipconfig>复制默认网关值
3.)编辑hosts文件(c:/ Windows / System32 / drivers / etc / hosts)
- 添加到您的主机文件:
<gateway-ip> yourserver.local
OS X设置
1.)编辑Apacheconfiguration(例如,sudo vim /etc/apache2/httpd.conf)
- 将此虚拟主机条目添加到您的httpd.conf文件中:
NameVirtualHost 127.0.0.1 <VirtualHost 127.0.0.1> DocumentRoot“/ path / to / your / project” ServerName yourserver.local <目录“/ path / to / your / project”> AllowOverride全部 选项全部 </目录> </虚拟主机>
- 保存并退出(:wq)
2.)编辑你的hosts文件(sudo vim / etc / hosts)
- 将此行添加到您的主机文件
127.0.0.1 yourserver.local
3.)重启Apache(sudo apachectl restart)
我发现我必须在VMWare上切换连接设置,才能在这些设置为我工作之前重新启动连接。 我希望这有帮助。