我正在尝试使用 php fopen 函数将文件写入我的 /tmp 目录(在 apache 服务器上),但它失败了:
<?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=onand allow_url_fopen=off,但我认为这不应该解释吗?
这是 Apache Httpd 2.0 上的 PHP 5.3.10。