我正在尝试将 Moodle 安装到我的 Web 服务器上,但由于缺少写入权限,它无法创建 moodle 数据目录:
Parent directory (/var/www) is not writeable. Data directory (/var/www/moodledata) cannot be created by the installer.
我已尝试将 chmod 777 和 666 设置为 www 目录,但仍然不起作用......
ls -al 结果:
drwxrwsrwx+ 4 apache apache 31 Dec 8 15:49 www
编辑:
我对 www 文件夹的权限最终被搞乱了,因为我对权限一无所知,有人能帮我修复它们吗?我还需要允许 sftp_users 组访问文件:
在 www 上执行 ls -al:
drwxrwsrwx+ 5 apache sftp_users 48 Dec 8 19:35 www
ls -al 在 www 内:
drwxrwsrwx+ 5 apache sftp_users 48 Dec 8 19:35 .
drwxr-xr-x. 22 root root 4096 Dec 8 17:29 ..
drwxrwx---. 2 root sftp_users 6 Aug 24 21:12 cgi-bin
drwxrws---+ 3 root sftp_users 35 Dec 8 19:36 html
drwxrwsr-x+ 2 root sftp_users 6 Dec 8 19:35 moodledata
答案1
可能是 selinux 阻止了访问。使用命令 getenforce 检查。如果结果是 Enforce,那么您可能需要使用命令 setenforce 0 或 setenforce Permissive 将其更改为 Permissive。您也可以通过编辑 /etc/selinux/config 并设置 SELINUX = disabled 来禁用 selinux。在这种情况下需要重新启动。另外 - 目录 ./moodledata 是 moodle 的 www 目录还是文件存储目录?如果是第二种情况,最好将其移出 www 目录,在 / 中指定目录,例如 /moodledata,然后为 apache 设置该目录的权限(或将此文件夹放在单独的磁盘或 SAN 共享或 NFS 上)。