【发布时间】:2013-11-04 05:01:39
【问题描述】:
我有几个 django 项目,它们在我的桌面上运行良好。但是当我在笔记本电脑上运行它们时,它们运行了一段时间。然后在随机情况下,打开页面将无法正常工作。浏览器不断尝试加载页面(标题选项卡不断旋转,尝试打开页面的 URL 更改,页面变为空白),而开发服务器(windows shell 上的 django)说它已成功服务于页面(200状态)。
这种行为在 Firefox、IE 和 Chrome 中是一致的。我尝试更改端口,使用机器 IP 而不是 localhost,在外部服务器上加载静态文件,但没有任何效果。我尝试从桌面浏览器打开站点(使用笔记本电脑名称)并且行为相同。另一个有趣的事情是,即使我关闭并重新启动 django 服务器,我也无法打开之前失败的页面,除非我关闭加载页面。
我的笔记本电脑运行的是基本的 Windows 8,而台式机运行的是 Windows 8 Pro。我认为windows版本与它有关。
有谁知道如何解决这个问题?我希望我说清楚了。谢谢。
【问题讨论】:
-
django 的内置
runserver有一个连接限制(在其他限制中,例如有一个有限的队列大小);如果您达到此限制,它将停止提供新页面。这可能就是你所面临的。 -
可能是,因为当我在当前页面完成加载之前点击链接时似乎触发了问题。但我不明白为什么那些卸载的元素不会被中止以释放资源。
-
顺便说一句,为了澄清,我在单个窗口/选项卡上打开这些页面。
-
那么您的浏览器可能仍会为上一个请求发送资源请求;当您单击要为新请求加载的内容时。这些多个请求可能会让人不知所措
runserver。如果您使用(正确的)wsgi 容器运行它,我相信这些问题会消失。