在ubuntu 18.04上使用Mod_WSGI的Django,但对Apache2的媒体/权限被拒绝

时间:2019-02-11 06:44:53

标签: python django apache2 mod-wsgi ubuntu-18.04

我正在尝试使用Mode_WSGI在具有Apache2的Ubuntu 18.04上部署Django(1.10)项目

我已将home内的项目文件夹设置为Fetchors目录,并为其添加权限:

total 40
drwxr-xr-x 6 abdul abdul    4096 Feb 10 15:48 .
drwxr-xr-x 5 root  root     4096 Feb 11 04:40 ..
-rw------- 1 abdul abdul    3930 Feb 11 02:14 .bash_history
-rw-r--r-- 1 abdul abdul     220 Apr  4  2018 .bash_logout
-rw-r--r-- 1 abdul abdul    3771 Apr  4  2018 .bashrc
drwx------ 3 abdul abdul    4096 Feb 10 15:37 .cache
drwx------ 3 abdul abdul    4096 Feb 10 15:34 .gnupg
-rw-r--r-- 1 abdul abdul     807 Apr  4  2018 .profile
drwx------ 2 abdul abdul    4096 Feb 10 15:34 .ssh
drwxrwxr-x 9 abdul www-data 4096 Feb 11 06:27 Fetchors

这是media目录中的权限:

total 16
drwxrwxr-x 4 abdul www-data 4096 Feb 10 15:37 .
drwxrwxr-x 9 abdul www-data 4096 Feb 11 06:27 ..
drwxrwxr-x 2 abdul www-data 4096 Feb 10 15:37 driver_image
drwxrwxr-x 2 abdul www-data 4096 Feb 10 15:46 product_image

我正在创建一个骄傲的对象,该对象需要将产品图片保存在product_image文件夹中,但是它说:

  

[Errno 13]权限被拒绝:“ media / product_image”

如何解决此问题?

谢谢!

2 个答案:

答案 0 :(得分:1)

通过在终端中运行此命令来授予对媒体文件夹的权限

sudo chmod -R 777 media

但这是一个糟糕的解决方案,请遵循此答案https://stackoverflow.com/a/21797786/5301788

上的建议

答案 1 :(得分:0)

我已通过将MEDIA_ROOT中的settings.py路径更改为以下方式解决了这个问题:

MEDIA_ROOT = os.path.join(BASE_DIR,'media')

然后,它将获取项目的适当权限。