从 django 1.8 更新到 1.10.2 并在本地解决大部分错误后,我在生产中加载静态文件时得到 net::ERR_CONTENT_LENGTH_MISMATCH 和 net::ERR_EMPTY_RESPONSE。
当 debug 为 True 时,一切都在本地运行良好。在生产中,我获得了模板,但模板中引用的静态文件无法加载。
在 1.8 中一切正常。
我们在生产中使用 uwsgi。我不确定我们还在使用什么。但可以找出是否有必要。
还有其他人处理这个吗?有没有固定的?
谢谢。
从 django 1.8 更新到 1.10.2 并在本地解决大部分错误后,我在生产中加载静态文件时得到 net::ERR_CONTENT_LENGTH_MISMATCH 和 net::ERR_EMPTY_RESPONSE。
当 debug 为 True 时,一切都在本地运行良好。在生产中,我获得了模板,但模板中引用的静态文件无法加载。
在 1.8 中一切正常。
我们在生产中使用 uwsgi。我不确定我们还在使用什么。但可以找出是否有必要。
还有其他人处理这个吗?有没有固定的?
谢谢。
从 Django 1.10 开始,它不再从带有 HTTP204 状态代码的响应中剥离内容。
WSGI 处理程序不再从 HEAD 请求或 status_code 为 100-199、204 或 304 的响应中删除响应内容。大多数 Web 服务器已经实现了此行为。使用 Django 测试客户端检索到的响应继续应用这些“响应修复”。
https://docs.djangoproject.com/en/1.10/releases/1.10/#miscellaneous
我有问题的代码是:
return Response({}, status=status.HTTP_204_NO_CONTENT)
我改为:
return Response(status=status.HTTP_204_NO_CONTENT)