Drupal 安装和权限

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 中的步骤一和步骤二操作,但没有成功。

更新:

为了进一步探索情况,我创建了 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”下),没有问题。文件夹已创建,一切顺利。从 Web 运行,我得到以下内容:

警告:mkdir():/var/www/html/sites/default/richard.php 第 9 行的权限被拒绝用户是 apache /var/www/html/sites/default

更新 2:

安全模式似乎已关闭...

-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

有几件事需要考虑

  1. 关闭 selinux 或者将其设置为宽容模式

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

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

  4. 重新启动 apache 并重试。

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

答案2

SELinux 有点太高了。

我暂时使用设置为允许

sudo echo 0 >/selinux/enforce

设置后将恢复检查。

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

相关内容