OSError - Errno 13 权限被拒绝

新手上路,请多包涵

我正在尝试通过管理页面上传图片,但它一直说:

 [Errno 13] Permission denied: '/path/to/my/site/media/userfolder/2014/05/26'

文件夹 userfolder/2014/05/26 是在上传时动态创建的。

在 Traceback 中,我发现此命令期间发生错误:

在 /usr/lib64/python2.6/os.py 第 157 行。同时调用

mkdir(name, mode)

意思是,它不能创建任何文件夹,因为它没有这样做的权限

我在服务器中有 OpenSuse 作为操作系统。在 httpd.conf 中,我有这个:

 <Directory /path/to/my/site/media>
   Order allow,deny
   Allow from all
</Directory>

我必须 chmod 或 chown 吗?

原文由 doniyor 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 803
2 个回答

您需要更改目录权限,以便 Web 服务器进程可以更改目录。

  • 要更改目录的所有权,请使用 chown
   chown -R user-id:group-id /path/to/the/directory

  • 要查看哪个用户拥有 Web 服务器进程(相应地更改 httpd ):
   ps aux | grep httpd | grep -v grep

或者

  ps -efl | grep httpd | grep -v grep

原文由 falsetru 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果文件夹名称前有斜杠,也可能会发生这种情况:

 path = '/folder1/folder2'

OSError: [Errno 13] Permission denied: '/folder1'

出现错误,但这个工作正常:

 path = 'folder1/folder2'

原文由 mjp 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题