运行nginx的django服务器上的大型媒体文件出现403错误
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了运行nginx的django服务器上的大型媒体文件出现403错误,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1114字,纯文字阅读大概需要2分钟。
内容图文
![运行nginx的django服务器上的大型媒体文件出现403错误](/upload/InfoBanner/zyjiaocheng/970/241d5b6aa8834bd69a18aed4758ff168.jpg)
我正在使用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左右).任何人都知道为什么较大的媒体文件可能会触发问题,以及我应该如何解决它?
我必须在我的nginx.conf中将client_max_body_size设置为100M,如果这是一个有用的东西要知道.
解决方法:
我刚刚遇到了同样的问题.谢谢你的SO线程,否则我仍然会在错误的地方搜索.
要解决此问题,您实际上不需要设置DATA_UPLOAD_MAX_MEMORY_SIZE,只要您在上传文件时遇到此错误即可. Django documentation链接到另一个值FILE_UPLOAD_MAX_MEMORY_SIZE,here.
在我的settings.py中将FILE_UPLOAD_MAX_MEMORY_SIZE设置为更高的限制解决了问题,以及nginx.conf中的上述client_max_body_size.
这会将上载最大值设置为大约200 MB:
FILE_UPLOAD_MAX_MEMORY_SIZE = 200000000
内容总结
以上是互联网集市为您收集整理的运行nginx的django服务器上的大型媒体文件出现403错误全部内容,希望文章能够帮你解决运行nginx的django服务器上的大型媒体文件出现403错误所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。