所以我很困扰这个问题。 安装过程抱怨在settings.php和sites / default / files /上写入权限。 但是,我已经将这些文件暂时移到了写/读(chmod 777),并将所有者/组更改为“apache”,如下所示。
-bash-4.1$ ls -hal total 28K drwxrwxrwx. 3 richard richard 4.0K Aug 23 15:03 . drwxr-xr-x. 4 richard richard 4.0K Aug 18 14:20 .. -rwxrwxrwx. 1 apache apache 9.3K Mar 23 16:34 default.settings.php drwxrwxrwx. 2 apache apache 4.0K Aug 23 15:03 files -rwxrwxrwx. 1 apache apache 0 Aug 23 15:03 settings.php
但是,安装仍然抱怨写权限。 我遵循INSTALL.txt的第一步和第二步,但没有运气。
更新:
为了进一步探索这种情况,我使用以下代码创build了sites / default / richard.php:
<?php error_reporting(E_ALL); ini_set('display_errors', '1'); mkdir('files'); print("<hr> User is "); passthru("whoami"); passthru("pwd"); ?>
从命令行运行(用户“richard”),没有问题。 该文件夹创build一切都是一个去。 从网页运行,我得到以下内容:
警告:mkdir():第9行的/var/www/html/sites/default/richard.php中的权限被拒绝用户名是apache / var / www / html / sites / default
更新2:
安全模式似乎closures…
-bash-4.1$ cat /etc/php.ini | grep safe | grep mode | grep -v \; safe_mode = Off safe_mode_gid = Off safe_mode_include_dir = safe_mode_exec_dir = safe_mode_allowed_env_vars = PHP_ safe_mode_protected_env_vars = LD_LIBRARY_PATH sql.safe_mode = Off
有几件事情要考虑
closuresselinux或将其设置为宽容模式
检查读/写权限目录的selinux上下文
清除浏览器的caching并重试。
重新启动Apache,然后重试。
检查目录是否有任何磁盘配额,并超出限制。
SELinux有点太高了。
我暂时设置为宽容使用
sudo echo 0 >/selinux/enforce
设置完成后将恢复检查。