我试图写一个文件到我/ tmp目录(在apache服务器上)与php fopen函数,但它失败:尽管777权限和没有open_basedir值不能写入到/ tmp与php,尽管777权限和没有open_basedir值
<?php
$handle = fopen("/tmp/test.txt", "x");
if ($handle) echo "Success!";
else print_r(error_get_last());
?>
这将返回错误消息“无法打开流:没有这样的文件或目录”。/tmp目录的权限设置为drwxrwxrwt,我可以看到Web用户正在向其写入其他文件。神秘的是,如果我将脚本指向具有权限777的另一个文件夹,它将返回成功。但我的open_basedir有“没有价值”。我有safe_mode = on和allow_url_fopen = off,但我认为这不应该解释它?
这是关于apache 2.0的php 5.3.10。
'test.txt'存在吗? – maialithar
不,上述脚本的要点是测试我是否可以在我的/ tmp文件夹中创建文件。我已经用'x'和'w'标志试过脚本。 –
chrooted也许? – Robus