413 Django服务器上的负载太大
每当我们尝试将大文件上传到Django后端时,我的团队都会收到413个错误:413 Django服务器上的负载太大,django,webserver,http-status-code-413,Django,Webserver,Http Status Code 413,每当我们尝试将大文件上传到Django后端时,我的团队都会收到413个错误:413负载太大 我们无法精确确定可接受的最大文件大小-它似乎在1-3MB范围内摇摆不定 我们排除的事项: 这不是Web服务器配置问题,因为我们正在运行 本地Django服务器(无Web服务器) 我们认为这不是应用服务器配置问题,因为这发生在多个应用服务器上(/manage.py runserver和 daphne-p8000 topnott.asgi:application) Django模型上的字段没有问题,看起来
413负载太大
我们无法精确确定可接受的最大文件大小-它似乎在1-3MB范围内摇摆不定
我们排除的事项:
- 这不是Web服务器配置问题,因为我们正在运行
本地Django服务器(无Web服务器) - 我们认为这不是应用服务器配置问题,因为这发生在多个应用服务器上(
和/manage.py runserver
)daphne-p8000 topnott.asgi:application
- Django模型上的字段没有问题,看起来
正常:
photo=models.ImageField(blank=True)
有人能发现我们遗漏了什么吗?据我所知,runserver或daphne永远不会归还413。看起来您的python服务器前面有NGINX 您可以在nginx.conf的服务器块中使用client_max_body_size更改限制
server {
client_max_body_size 20M;
listen 80;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:8000/;
}
}
Django有一个内置机制来防止任何可疑活动 在settings.py文件中设置变量
DATA_UPLOAD_MAX_MEMORY_SIZE = 10*1024*1024 # your size limit in bytes
请参阅文档:如果您的团队正在使用,则在导致意外413错误时引入了一段代码(已讨论)。但是,这是固定的。前面有nginx吗?没有-它在我的机器上本地运行。(
/manage.py runserver
)我在Django代码库中没有看到任何与“413”相关的点击。您正在使用第三方文件存储引擎吗?在任何情况下,请尝试调整设置。我正在本地计算机上运行Django服务器。这意味着Python服务器前面没有webserver(没有NGINX),你刚刚救了我一命