我正在开发一个移动网站。我通过虚拟机 (vmware) 在 Ubuntu 中开发。我有一台 Windows 8 主机和一台 Ubuntu 13.10 客户机。
我想要能够在手机上查看网站正在制作中,以便进行测试。我该怎么做?
我是一名开发人员,不是网络人员=)
注意:我使用的是 NAT 连接。我可以从主机浏览器访问访客 Web 服务器,但不能从手机浏览器 (chrome) 访问。手机连接到同一个(无线)网络。
谢谢!
答案1
如果您希望虚拟机与其运行的计算机共享相同的 IP 地址,则使用 NAT。
如果您希望虚拟机拥有自己的 IP 地址,请将虚拟机的虚拟网络适配器切换为桥接模式。然后,您可以让虚拟机从 DHCP 获取 IP,或者手动分配 IP。
如果您确实需要,您可以通过虚拟机的 NAT 访问服务器,但您必须在虚拟机上设置端口转发。使用桥接模式要容易得多。
如果您希望该网站也可通过手机的蜂窝数据连接访问,请按照上面的@Pierre 的解释,在您的互联网路由器上设置端口转发。
答案2
假设:
- 您的手机已连接至网络运营商,
- 在您的本地网络中,ADSL 调制解调器连接到另一个网络运营商(或与您的手机使用的同一运营商),
- 路由器安装在您的本地网络的某个地方(可能是在您的 ADSL 调制解调器内)。
出色地。
- 配置您的虚拟机并将其 NAT 更改为 Bridge 连接,
- 配置你的客户机(Ubuntu 13.10),手动将其网络接口设置为固定 IP 地址(例如 192.168.0.3 + 网关 + DNS),
- 出于安全原因,在您的客户机上安装 PHPMyAdmin(PhpMyAdmin 会捕获默认的传入流量),
- 配置您的路由器以将进入端口 80 协议 TCP 的流量重定向到本地 IP 地址端口 80 协议 TCP(192.168.0.3,与您的客户机相同)。
就是这样。从您的手机浏览器中输入http://your-ADSL-ip-address:80/yourapp/
对我有用:
Windows 6.1 / VirtualBox 4.3.6 / Debian 7.3 / Apache 2.2.23
Android 2.3.3