繁体   English   中英

在服务器上部署后,Django没有响应某些请求

[英]Django doesn't respond on some requests after deployment on server

在使用gunicorn部署在服务器上之后,我的Django应用有一些怪异的行为。

首先,我使用runit工具(当然是Linux)向新贵添加脚本。 并看到我的服务器根据需要进行响应。 也许它会应要求做出响应,也许不是。

我很震惊,因为本地计算机上的相同配置可以正常工作。

因此,我决定从upstart删除脚本,并尝试使用与从runit upstart删除的脚本相同的脚本在本地计算机上运行。 结果更好,它可以响应95%的ajax调用,但是仍然无法正常工作。

chrome网络监控屏幕。

在此处输入图片说明 10秒钟,需要SIMPLE请求停止/ URL。 我从未见过,当应用程序部署在服务器上时,该服务器会在启动/ URL上响应客户端。

从我的本地计算机到Chrome网络监控,都有一些屏幕。 在此处输入图片说明

我在Google计算引擎上运行应用程序,因此我认为该服务器的性能不足。 但这是错误的。 机器类型的变化没有影响。

然后,我决定看看日志和代码。 在回应之前,我写了以下几行代码:

log.info('Start activity for {}'.format(username))
return HttpResponse("started")

我可以在日志中看到它。 但是它仍然没有回应。

在此处输入图片说明

我仍然不明白发生了什么。 这让我发疯。

大家。

我通过以下方法解决此问题:

  1. 将所有脚本更改为缩小版本(* .js-> * .min.js)
  2. django.middleware.http.ConditionalGetMiddleware添加到中间件
  3. SESSION_COOKIE_DOMAIN = ".yourdomain.com"添加到设置

也许对某人会有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM