4

我正在开发一个使用 Windows 7 作为我的开发环境的 Django 站点。我有 IE6 在 XP 模式下运行。通过 localhost:8000 访问我的站点在 IE6 中不起作用(可能是因为它仍在运行 VM)。当通过在 Windows 7 上运行的 Django 测试服务器提供服务时,有没有办法在 IE6 中访问我的网站?

4

2 回答 2

5

在一台机器上运行 Django runserver,但从另一台(或您的情况下为虚拟机)访问它时,请务必:

a) 让 django 测试服务器绑定到 VM 中的 IE6 可以访问的地址。为此,请使用以下命令运行服务器:

$ python manage.py runserver 192.168.x.x:8000

b) 访问 IE 中的显式地址和端口。对于 IE6,请务必指定“http”协议,因为 IE6 不喜欢没有协议的 IP 地址:

http://192.168.x.x:8000/

这样做的原因是,在 VM 内部,localhost127.0.0.1(runserver 的默认值)指的是虚拟机的 IP 地址空间。如果使用 IE6 进行测试,则要参考主机操作系统,因此请使用客户端 VM 可以寻址的绝对 IP 地址。django 项目中有一些关于此的文档,请放心,这是我们所有人都这样做的普遍需求 - 在虚拟机中测试 IE 的多个变体似乎是生活中的事实:-)

如果您仍然遇到问题,请确保您已确定您是否为客户端 VM 使用 NAT 或桥接网络,因为这控制 IP 地址、操作系统防火墙限制(如果有)以及其他用于在 VM 客户端和客户端之间进行通信的途径主持人。

于 2009-08-15T01:48:24.493 回答
2

您的虚拟机和运行 django 的服务器位于两个独立的容器中,并且您无法使用 localhost 访问 django 应用程序,因为虚拟机上没有安装 Django。但你可以做的是在 Windows 7 中安装 IE 测试器http://www.my-debugbar.com/wiki/IETester/HomePage]来测试所有版本的 IE。

于 2009-08-15T01:39:26.217 回答