我正在使用 Nginx 和 Gunicorn 运行托管在 DigitalOcean 上的 Django 服务器。当我遇到 403 错误时,我尝试通过管理界面添加 2MB 图片。调查error.log
指示权限被拒绝,如下:
2017/06/27 01:03:29 [error] 1643#1643: *30 open() "/home/brian/nydkc11/nydkc11/nydkcd11/media/image_main/dtc1.jpg" failed (13: Permission denied), client: 108.29.217.25, server: nydkc11.org, request: "GET /media/image_main/dtc1.jpg HTTP/1.1", host: "nydkc11.org", referrer: "http://nydkc11.org/admin/blog/image/7/change/"
然而,最奇怪的是,较小的图像文件也可以正常工作(大约 18 kb 左右)。任何人都知道为什么较大的媒体文件可能会触发该问题,以及我应该如何解决它?
我必须设置client_max_body_size
to 100M
in my nginx.conf
,如果这是一件有用的事情。
我刚刚遇到了完全相同的问题。感谢您的帖子,否则我仍然会在错误的地方搜索。
要解决这个问题,你实际上要做not需要设置DATA_UPLOAD_MAX_MEMORY_SIZE
只要您仅在上传文件时遇到此错误。这Django 文档 https://docs.djangoproject.com/en/1.11/ref/settings/#data-upload-max-memory-size链接到其他值,FILE_UPLOAD_MAX_MEMORY_SIZE
, here https://docs.djangoproject.com/en/1.11/ref/settings/#std:setting-FILE_UPLOAD_MAX_MEMORY_SIZE.
Setting FILE_UPLOAD_MAX_MEMORY_SIZE
达到我的更高极限settings.py
解决了问题以及上述问题client_max_body_size
in nginx.conf
.
这将上传最大值设置为大约200 MB
:
FILE_UPLOAD_MAX_MEMORY_SIZE = 200000000
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)