【发布时间】:2012-04-06 11:58:16
【问题描述】:
我在 linux 上有一个名为 mygroup 的组。并有一个名为 apache 的用户。 apache 是 mygroup 的成员。
我创建了一个示例 php 文件并上传到服务器
<?php
$structure = '/my_repo/hello';
if (!mkdir($structure, 0, true)) {
die('Failed to create folders...');
}
?>
myrepo 目录位于根级别,组是 mygroup,所有者是根。权限为 764。
当我在http://mydomain.com/sample.php访问我的文件时
它给了我以下错误
[warn] mod_fcgid: stderr: PHP Warning: dir(/my_repo/hello)
[<a href='function.dir'>function.dir</a>]: failed to open dir:
Permission denied in /var/www/clients/client1/web2/web/sample.php
【问题讨论】:
-
您似乎没有在
/中创建目录的权限。文件夹/my_repo/是否存在?尝试简单地 mkdir('/my_repo/')。它给了什么? -
你检查你的目录写权限了吗?
-
您会得到 PHP 警告的答案。您没有创建目录的权限。在 Windows 中这很简单,但在 linux 中检查脚本和目录等的 CHOWN。
-
/my_repo 文件夹存在,其组为 mygroup,所有者为 root。