【发布时间】:2014-06-18 18:07:08
【问题描述】:
当我将文件上传到 Django 服务器时,文件权限似乎是这样的
-rw-r--r-- 1 bangtest nobody 5198 May 2 00:37 image.jpg
但我想以 root 用户身份上传这些文件,如何在 Django 应用程序中使用 python 来做到这一点。
我尝试过使用this
import pwd
import grp
import os
uid = pwd.getpwnam("root").pw_uid
gid = grp.getgrnam("root").gr_gid
path = '/home/bangtest/alpha/media/products/image_2081.jpg'
os.chown(path, uid, gid)
然后我收到类似的错误
OSError: [Errno 1] Operation not allowed: '/home/bangtest/alpha/media/products/image_2081.jpg'
建议我解决此问题。
谢谢
【问题讨论】:
-
为什么要改成root用户?
-
你好@François,Erlier我在从mod_wsgi apache访问保存的图像时遇到了一个问题,这个link是我的问题。将文件所有者从bangtest更改为root后,我可以访问文件.由于这个原因,我只想将其更改为root用户。
-
以 root 身份运行并想要访问它们的进程是什么?它不会是 Apache,因为它在处理请求时以不同的用户身份运行,并且永远不会以 root 身份运行。任何其他以 root 身份运行的进程都应该能够访问这些文件,而不管权限如何。
标签: python django django-views mod-wsgi