django - nginx,uwsgi,DJango,DEBUG = False时的502, “upstream prematurely closed connection”

标签 django sockets nginx wsgi uwsgi

我有一个使用uwsgi(使用this tutorial设置)运行Django应用程序的可运行的nginx生产服务器。

nginx和uwsgi通过UNIX套接字进行通信。

但是,一旦我在Django设置中打开DEBUG = False,就会收到502错误。 Nginx错误日志告诉我:

2015/09/08 10:37:51 [error] 940#0: *4 upstream prematurely closed connection while reading response header from upstream, client: myIP, server: mydomain.ca, request: "GET /quests/ HTTP/1.1", upstream: "uwsgi://unix:///tmp/hackerspace.sock:", host: "myDomain"

如何防止套接字连接超时,为什么DEBUG = False会导致这种差异?

谢谢!

最佳答案

我找到了适合我的解决方案。我必须在Django的settings.py中为 ALLOWED_HOSTS 列表指定主机。
ALLOWED_HOSTS = ['example.com', 'example.dev']

关于django - nginx,uwsgi,DJango,DEBUG = False时的502, “upstream prematurely closed connection”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32464235/

相关文章:

amazon-web-services - 客户端打算发送太大的正文 EB Nginx

Django注销问题

python - 将相关资源与 TastyPie 相结合

Django 通用外键过滤(v1.5 和 v1.6 之间的差异)

python-3.x - Python sendto告诉我它需要一个int

未找到 PHP 文件,应根据配置的 vHost 找到该文件

python - Django - 禁止(CSRF token 丢失或不正确。)

c++ - 将 int 转换为 void *data 并获取以字节为单位的长度

c++ - 如何在 Poco C++ 中复制缓冲区字节 block ?

java - 在微服务架构中提供静态内容