[PHP-users 20086]作成したファイルが削除できません

チノ cappuccino @ paya.net
2004年 1月 28日 (水) 16:16:13 JST


チノです。

よく頭がこんがらかる、初心期の小さな壁ですね。

ファイルシステムにアプローチするユーザの違いが問題の鍵です。

#とりあえず下記を理解する前提知識としてパーミッションがあります。
#もし理解できなければネット検索などしてみてください。

普段パソコンの前に座って見ているユーザインターフェイスから
ファイルシステムにアクセスする場合と、
ブラウザ→ネットワーク→サーバなどを介してアクセスする場合とで
ファイルシステムから見たユーザは別人です。
実際にはどちらも「あなた」本人が作業している点から誤解しがちですが、
ファイルシステムにしてみれば同一ユーザである根拠はありませんよね。
裏返せばサーバが別ユーザによる削除などの
越権アクセスからファイルを守っている訳です。(→パーミッション)

解決方法としては
(1)別ユーザでのアクセスが出来ないなら同ユーザでアクセスする。
(2)別ユーザでも削除などが出来るように権限設定(パーミッション)をする。
があります。

上記(1)はファイルを作成したPHPファイルと同様に、
ファイルを削除するPHPファイルをサーバを通してリクエストすればOK。
(2)ではファイルを作成したPHPファイルから
umask()などをつかって権限設定する。

お力になれましたでしょうか。



PHP-users メーリングリストの案内