phpfopen関数を使用して(Apacheサーバー上の)/ tmpディレクトリにファイルを書き込もうとしていますが、失敗します。
<?php
$handle = fopen("/tmp/test.txt", "x");
if ($handle)
echo "Success!";
else
print_r(error_get_last());
これにより、エラーメッセージが返されます。
ストリームを開くことができませんでした:そのようなファイルまたはディレクトリはありません。
/tmpディレクトリには権限が設定されており、drwxrwxrwtWebユーザーが他のファイルをディレクトリに書き込んでいることがわかります。不思議な777ことに、アクセス許可のある別のフォルダーにスクリプトを指定すると、成功が返されます。しかし、私open_basedirには価値がありません。私は持ってsafe_mode=onいallow_url_fopen=offますが、それはそれを説明するべきではないと思いますか?
これは、ApacheHttpd2.0上のPHP5.3.10です。