0

我必须在 CentOS 系统(运行 python 2.4)上安装一个 Django 1.4 项目,所以我在 /opt/python2.7/ 上构建了 python 2.7,到目前为止一切顺利。

我已经上传了项目,更改了权限(chown -r apache:apache ./),一切似乎都正常,除了列表上传。上传本身顺利,(子)文件夹和文件已正确创建(例如/media/cache/thumbnail.jpg)

但是,当尝试列出文件(查看 admin/change_form.html 标准 django 模板)时,我收到此错误:

(site-packages/PIL/Image.py in init)

for file in os.listdir(directory): 
    ...

13, permission denied

这是因为我以 root 身份安装了 python 并且项目/wsgi 是由 apache 用户运行的吗?有没有一种干净的方法来解决这个问题?更改 /media/ 文件夹的权限似乎没有影响,所以我认为这是由站点包权限引起的?

4

1 回答 1

3

这是一个基本的权限问题。要列出目录内容,用户需要对父目录具有执行权限。

相应地修复您的权限,您应该不会有问题。

请注意,更改所有者chown不会修改权限,只会修改所有者和组。无论您的系统的默认设置是什么,权限都保持不变,这些默认设置由umask.

于 2012-04-10T11:11:03.570 回答