1

我有一个适用于我们办公室的 PHP 脚本/应用程序,我成功地将它部署到另一个办公室。现在在第三个办公室,某个 glob() 函数返回一个空字符串。

所有办公室都使用debian stable,所以软件包的版本应该是一样的。我能想到的最好的是,该特定目录的权限不足。

我已经这样做了:

  • 将 '/share' 添加到虚拟主机内的 open_basedir 指令中,不带尾随 '/' 以使其递归 -> 验证可使用 phpinfo()
  • 在 '/share' 上设置权限:'setfacl -Rm d:u:www-data:rwx,u:www-data:rwx /share' 然后我重新安装了 '/share' 并重新启动了 apache 以确保新的权限正在使用中。-> 验证正在使用“getfacl /share”:确认 www-data 对 /share 及其下的所有目录具有读/写权限
  • 我已验证“安全模式”已关闭
  • 我已将 www-data 添加到拥有 '/share': 'chown -R username/groupname /share' 的 POSIX 组中,这由 'ls -l' 验证。该目录上的 POSIX 权限是 'drwxrws---+'

我在看什么?

4

1 回答 1

0

找到了,当然它是如此明显,以至于我可以打自己的头。包含“/share”的文件夹具有严格的权限,这可能会禁止用户“www-data”进入“/share”。谢谢你和我一起思考......

于 2012-07-20T16:49:31.430 回答