Drupal的安装和权限

所以我很困扰这个问题。 安装过程抱怨在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 

有几件事情要考虑

  1. closuresselinux或将其设置为宽容模式

  2. 检查读/写权限目录的selinux上下文

  3. 清除浏览器的caching并重试。

  4. 重新启动Apache,然后重试。

  5. 检查目录是否有任何磁盘配额,并超出限制。

SELinux有点太高了。

我暂时设置为宽容使用

 sudo echo 0 >/selinux/enforce 

设置完成后将恢复检查。

http://www.crypt.gen.nz/selinux/disable_selinux.html