PHP没有读取具体目录?

时间:2014-12-30 14:01:43

标签: php centos

我的centos服务器发生了一些奇怪的事情。我有一个星号服务器,我需要访问录制目录。但这是不可能的。

dir / var / spool是不可读的。我可以使用root用户和apache用户访问ssh,但是从php开始就不可能。

我不知道为什么!这个目录和/ var / test /具有相同的权限(所有者,组,chmod 755,ALL)。

我使用这个PHP代码:

我尝试使用exec函数(从另一个dirs工作),is_readable,file_get_contents但没有:(

function wav_callid($id) {
        $id = (int) $id;
        $filename = 'cid'.$id.'.wav';
        $path = '/var/spool/asterisk/monitor/' . $filename;
        $tmp_path = '/tmp/' . $this->global_model->generate_random_hash();
        exec("cp '$path' '$tmp_path'");
        var_dump(is_readable('/var/spool')); // RETURN FALSE
        var_dump(scandir('/var/spool')); // RETURN FALSE
        var_dump(file_get_contents($path)); // RETURN FALSE

        var_dump(is_readable('/var/test')); // RETURN TRUE
        var_dump(scandir('/var/test')); // RETURN ARRAY

        /*header('Content-Description: File Transfer');
        header('Content-Type: audio/x-wav');
        header('Content-Disposition: attachment; filename=' . $filename);
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Pragma: public');
        echo file_get_contents($tmp_path);*/

    }

我该怎么做?

抱歉我的英语不好。

由于

2 个答案:

答案 0 :(得分:0)

将项目保存到/ var / www / html目录中。然后更改权限。或者将项目foldar符号链接创建到/ var / www / html目录。

答案 1 :(得分:0)

Selinux阻止了这个目录。

Centos 6的命令:

 echo 0 >/selinux/enforce

然后重启。