如何从访客计算机访问主机?[关闭]
-
09-06-2019 - |
题
我刚刚使用 VMware Fusion 在 Mac 上创建了一个新的 Windows XP 虚拟机。虚拟机使用 NAT 来共享主机的互联网连接。
如何访问 Rails 应用程序,该应用程序可在 Mac 上使用 http://localhost:3000
?
解决方案
在 XP 计算机上,通过转到命令提示符并键入来查找您的 IP 地址 ipconfig
. 。尝试将最后一个数字替换为 1 或 2。例如,如果您的 IP 地址是 192.168.78.128,请使用 http://192.168.78.1:3000.
其他提示
对于未来的访客:计算出 IP 地址后,您可以向位于 C:\Windows\system32\drivers\etc\hosts 的 Windows 主机文件添加一个条目,以将 IP 地址映射到(虚拟)服务器姓名。添加这样一行:
192.168.78.1 myrubyapp
现在您可以在 IE 中访问该网站,地址为 http://myrubyapp:3000
如果您在 Apache 下使用虚拟主机,您将需要它来提供正确的服务器名称。
由于这个问题已经很老了并且涉及 XP,因此这里有一个新操作系统的替代方案;
如果你摇摆不定 维斯塔 或者 Windows 7的 作为来宾操作系统,并且您通过 Apache 在主机中设置了虚拟主机,设置方法如下:
在Host OS中,需要确保网络连接是通过NAT完成的;
- 右键单击虚拟机窗口中的网络图标(右下角)
- 选择“NAT”
- 选择“连接”
- 等待来宾操作系统重新连接到网络
然后,在来宾操作系统中;
- 单击开始 > 网络 > 网络和共享中心
- 单击网络连接旁边的“查看状态”
- 点击“详细信息”
- 找到“IPv4默认网关”
- 打开写字板
- 编辑C:\Windows\System32\drivers\etc\hosts
在文件中添加一行,例如:
[default-gateway-IP] www.example.com [default-gateway-IP] example.com
节省
- 尝试打开
http://www.example.com
或者http://example.com
在IE中
- 在 XP 计算机上,开始 -> 连接到 -> 显示所有连接。
- 双击本地连接。
- 单击支持选项卡。
- 获取默认网关IP
<gateway-ip
> 并点击 http://<gateway-ip
>:3000 在您的浏览器中。
问题:地址中必须包含http://,否则IE将提示“该网页无法显示”。
对于 Django,执行以下操作很重要:
./manage.py runserver [默认网关IP]:8000
因为
https://docs.djangoproject.com/en/dev/ref/django-admin/
请注意,默认 IP 地址 127.0.0.1 无法从网络上的其他计算机访问。要使网络上的其他计算机可以查看您的开发服务器,请使用其自己的 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.) 编辑 Apache 配置(例如 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 <Directory "/path/to/your/project"> AllowOverride All Options All </Directory> </VirtualHost>
- 保存并退出 (:wq)
2.) 编辑主机文件 (sudo vim /etc/hosts)
- 将此行添加到您的主机文件中
127.0.0.1 yourserver.local
3.) 重新启动 Apache (sudo apachectl restart)
我发现我必须在 VMWare 上切换连接设置才能重新启动连接,然后这些设置才能对我起作用。我希望这有帮助。