Django 上传文件出现 OSError Permission denied的解决办法

如何解决:FileNotFoundError: 以及[Errno 2]No such file or directory 相信所有问题都能迎刃而解! 阅读详情

我的服务器在Ubuntu上,使用了Apache+Nginx做App Server,Django+Python开发,今天上传文件时候出现了OSError的错误,具体原因为Permission denied

一看发现是因为上传文件的文件夹可能没有被赋予www-data用户(Apache和Nginx用户)写的权限

根据以下网站的解决办法已经解决问题了,特写此博希望能帮到大家

http://stackoverflow.com/questions/1682440/permission-denied-error-with-django-while-uploading-a-file


I just ran into this same problem. And found the solution if you are hosting with Apache as your server. For instance if my settings were:

MEDIA_ROOT = '/var/www/media/geekingreen'

then I would simply need to give that folder the correct permissions recursively to make sure that any sub-folders also have the same permission. The default group for apache is www-data so to give permission to my django app I would run these commands.

Ubuntu 20.04 安装 Django 必须用 venv 虚拟环境 虚拟环境(venv)是 Python 项目依赖隔离的基础机制,其核心原理是通过复制解释器、重定向 site-packages 路径,实现与系统 Python 的完全解耦。这一技术保障了版本可控、环境可复现和部署安全性,是现代 Web 开发(尤其是 Django、Flask 等框架)的工程标配。在 Ubuntu 20.04 等 Debian 系发行版中,因系统预装 Python 3.8 及 apt 管理的全局包,直接使用 pip install 会污染系统环境,引发 ModuleNotFoundError、版 阅读详情

相关推荐

Ubuntu 18.04 安装 Django 的正确姿势:虚拟环境+Python 3.6+Django 3.2

Django 是 Python 生态中成熟稳定的 Web 开发框架,其核心价值在于通过 ORM 实现数据库逻辑与业务代码解耦,并依托 MTV 架构保障可维护性。在老旧但仍在广泛使用的 Ubuntu 18.04 系统上部署 Django,关键在于规避系统包管理器(apt)带来的版本锁定与路径污染风险,转而采用 Python 内置 venv 创建隔离环境——这既是官方推荐实践,也是生产就绪的最小可靠范式。技术实现需兼顾 locale 校准、清华镜像源加速、ALLOWED_HOSTS 配置及 manage.py

abc20899的专栏 462

Django生产部署:Apache + mod_wsgi 实战指南

WSGI(Web Server Gateway Interface)是Python Web应用与服务器通信的标准协议,其核心价值在于解耦应用逻辑与HTTP服务层。mod_wsgi作为Apache官方推荐的WSGI实现,通过守护进程模式提供进程隔离、内存管理与优雅重启能力,显著提升Django等框架的生产健壮性。相比开发服务器runserver的单线程局限,或Nginx+uWSGI的多组件架构,Apache+mod_wsgi方案在LAMP运维体系中具备配置统一、日志集中、安全模块(如mod_security)

weixin_30448603的博客 366

Ubuntu 20.04 Django 环境搭建避坑指南:隔离、编码、依赖三重加固

Django 是基于 Python 的高级 Web 框架,其稳定运行高度依赖底层 Python 环境与操作系统配置。在 Ubuntu 20.04 这类长期支持发行版中,系统自带的 Python 3.8、旧版 pip(20.0.2)及默认 C.UTF-8 locale 构成典型技术约束——它们虽满足基础语法,却与 Django 4.2+ 的 PEP 517 构建规范、异步视图支持和 Unicode 字符串处理存在隐性冲突。不加隔离的全局安装易引发系统包污染,locale 缺失将导致中文 verbose_nam

weixin_34023982的博客 382

Ubuntu 20.04 安装 Django 的完整避坑指南

Django 是 Python 生态中主流的全栈 Web 框架,其安装并非简单执行 pip 命令即可完成。核心原理在于 Python 多环境隔离机制、包管理器(pip)与系统包管理器(apt)的职责边界,以及 Ubuntu 20.04 默认环境对现代 Python 工具链(如 PEP 517、OpenSSL 1.1.1+)的兼容性限制。技术价值体现在构建可复现、可升级、安全可控的开发环境——避免系统 Python 污染、规避老旧 Django 2.2 的安全漏洞与生态脱节风险。典型应用场景包括本地开发、WS

weixin_34326558的博客 374

Django项目Azure DevOps CI/CD流水线实战指南

Django作为主流Python Web框架,其生产部署长期面临环境不一致、静态资源管理混乱、数据库迁移不可控等共性挑战。CI/CD自动化本质是将部署逻辑代码化、可审计、可回滚的过程,核心在于标准化Python依赖管理、解耦开发与生产配置、实现静态文件与数据库迁移的确定性执行。Azure DevOps YAML流水线凭借基础设施即代码(IaC)特性,天然适配Django项目的版本敏感性与多环境差异;结合Ubuntu-20.04稳定基线、App Service PaaS托管能力及requirements.tx

weixin_30298497的博客 340

一种基于频域滤波法消除干扰项与角谱法重构技术的数字全息显微台阶形貌测量实例分析

一种基于频域滤波法消除干扰项与角谱法重构技术的数字全息显微台阶形貌测量实例分析

简单光学 2034

告别单一帧:在CFD-POST中完整加载Fluent瞬态计算结果的实战指南

本文详细介绍了在CFD-POST中完整加载Fluent瞬态计算结果的实战指南,解决工程师常见的只能看到最后一帧数据的问题。通过Fluent端的正确设置和CFD-POST端的完整加载技巧,帮助用户高效处理瞬态数据,提升后处理效率。文章还提供了常见问题排查、性能优化和高级后处理技巧,适用于Workbench环境下的流体流动分析。

weixin_29284657的博客 537

ENVI新手避坑指南:手把手教你搞定遥感影像的坐标系转换(附ArcGIS对比)

本文详细解析ENVI与ArcGIS在遥感影像坐标系转换中的关键差异与实战技巧,特别针对新手常见问题提供避坑指南。从基础概念到高级操作,涵盖定义投影、UTM转换等核心步骤,并对比两种软件的处理精度与效率,帮助用户高效完成遥感影像处理任务。

weixin_42531925的博客 377

图文并茂把Ubuntu22.04安装到u盘,实现即插即用

1、刚好打算把Ubuntu安装到u盘,随便记录下整个过程。 2、前提准备:u盘(我的是16g大小),Vmware虚拟机,Ubuntu镜像文件(可以去官网下载); 3、下面记录全过程: 1、打开虚拟机,并选择创建新的虚拟机: 2、选典型: ​ ...

子非鱼 1万+

creo二次开发使用映射

在creo进行二次开发时,一些无法直接通过访问底层代码来对特征进行操作,比如“镜像装配”,这个时候就可以使用映射(Mapkey)来完成一键镜像。 注:这是镜像装配的代码 ProError status; ProMacro macro; wstring Macro; strMacro = L"mapkey(continued) ~ Command ProCmdMirrorAssem ; mapkey(continued) ~ Activate mirror_component_dialog Sy

qq_49328512的博客 1607

51单片机-点亮LED和蜂鸣器

ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。ULN2003是大电流驱动陈列,多用于单片机、只能仪表、PLC、数字量输出卡等控制电路中。可直接驱动蜂鸣器、继电器等负载。void delay(u16 i) // i等于1大约10uswhile(i--);//取反,高低电平不断变化,产生脉冲delay(10);// 周期200us。

三日沐水 1126

【Go语言实战】(26) 分布式搜索引擎

基于go语言的分布式搜索引擎

面向生活编程 2379

数字 IC 笔试面试必考点(2)FPGA 开发流程

FPGA 的详细开发流程就是利用 EDA 开发工具对 FPGA 芯片进行开发的过程,所以 FPGA 芯片开发流程讲的并不是芯片的制造流程,区分于 IC 设计制造流程哟(芯片制造流程多麻烦,要好几十亿的费用呢,而且国内也貌似没有哪家像样的 Foundry 厂,除了台湾的 TSMC 在世界有立足之地,Fabless 的 IC 设计公司倒是挺强的如 Hisilicon,这也是它为什么会被 USA 针对的原因)。

新芯设计的博客 2012

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

上一篇: Python+Django+Ubuntu+Apache+Nginx架设服务器成功记
下一篇: Django Admin Site (v1.4) 的Nginx配置
Wally_Yu
博客等级 码龄19年 71粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值