[PHP-users 8800] safe-mode onの時cli版phpでは、デイレクトリやファイルが

Tomoyuki Asakawa php-users@php.gr.jp
Mon, 22 Jul 2002 10:53:52 +0900


あさかわです。

apacheモジュール版で、デイレクトリや、ファイルを作成すると
su-exec版であっても、apacheの起動ユーザが、所有者になってしまいます。

これは、仕様なのでしかたがありません。

そこで、これを回避するために、
cli版のphpをつかって、デイレクトリや、ファイルを作成しようとすると
safe-mode=onの場合、エラーになって作成できません
(internal server errorではないです、phpがエラー出してます)
safe-mode=offにすればOKです。

さすがにこれは仕様だとは思えないのですが。
わたし何か勘違いしてますでしょうか?

エラーは以下です。

Warning: SAFE MODE Restriction in effect.  The script whose uid is -1 is 
not allowed to access test owned by uid 1002 in /www/test.cgi on line 2

どうも、対象のディレクトリの、ownerを、間違えている様にみえます
(書き込み先ヂレクトリtestも、スクリプトも1002なんです)

ちなみにスクリプトは以下。

#!/usr/local/bin/php
<%
         mkdir("test/testdir2",0777);
         $fp=fopen("test/test2","w");
%>

ちなもに、バージョンはPHP4.2.1です。