リボンのphpについて

私もよくわかってないので、聞かないでください。 でも、わかる人いたらkroete1◎blackmail.cnまで教えてください。 ファイル作成できない・書き込めないじゃ、PHP使えるサイト借りた意味がほとんどないもん。
※後日追記 こことかこことか見りゃー一発かも
http://www.phppro.jp/qa/81
http://www.php.net/manual/ja/features.safe-mode.functions.php


まずは、ド素人の私が気付かなかった罠

 自鯖でphp初めたばかりの人は気付かないかもしれないけど、ファイルやフォルダの属性 って聞いたことあるだろうか? 自鯖ではできるのにここでは外部ファイルに書き込めない という人で、属性をいじった覚えが無い人などは属性による規制の為だと思っていい。 FFFTPで、ホスト側のファイルを右クリックすると、一覧の中に属性の変更という項目が ある。そこで、書き込みを許可すればok。


セーフモードって何じゃろ?

 PHP本家から引用すると以下↓のようになる。スクリプトで処理されるファイルの 所有者をチェックするという意味でいいかな?

 セーフモードがonの場合、PHPは、 現在のスクリプトの所有者がファイル関数によ
り処理されているファイル の所有者に一致するかどうかを調べます。例えば、

-rw-rw-r--    1 rasmus   rasmus       33 Jul  1 19:20 script.php 
-rw-r--r--    1 root     root       1116 May 26 18:01 /etc/passwd

以下のscript.php を実行すると、
<?php
 readfile('/etc/passwd');
?>
セーフモードが有効な場合、以下のようなエラーが出力されます。

Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is not 
allowed to access /etc/passwd owned by uid 0 in /docroot/script.php on line 2

UID checking. しかし、多くの環境において、厳密なUIDチェックは 適切ではなく、
より緩やかなGIDチェックで十分です。 これはsafe_mode_gidスイッチで サポートされます。
これをOnにすると制限の緩い GIDチェックに、Off(デフォルト) にするとUIDチェック
になります。

以下、yellowribbonの仲間である御茶御茶さんのとこから引用

 りぼんさんでファイルの作成出来ない理由。ヒントだけ与えておきますと、
セーフモードとは関係有りませんわ。php は httpd に組み込まれており
ますので、php の生成ファイルは httpd と同じユーザ権で作成されます。
ということは?あそこをああいうふうにすれば、各ユーザとは関係ないの
で php からファイルは作れませんよね〜。なわけで初めからファイルを
作っておかないと、どうしようもないわけですわ。

 一般的なことだけど、php ってのはスクリプト言語で httpd にコンパ イラが組み込まれている場合は、パーミッションに実行権は必要有りま せん。cgi を動作させるときは実行権を与えますが、あれは「httpd が《 指定したファイルの実行結果》を表示」するために、実行権を与えて自ら 実行」させています。で、組み込み php の場合は「httpd は《スクリプトを 読み込んで自分自身が実行者となって解析して実行結果を表示》する」っ て感じで、ファイルから読みとるときは平文、すなわちテキストで書かれ たままの文章で読みとります。だから実行権が無くても、読み取り権さえ 有れば大丈夫なわけです。もちろん php でも、cgi として php を動かす 場合には実行権が必要です。感覚的には UNIX をコマンドラインであつか ったことがなければよくわからないかも知れませんが、実行権が無くても 「perl hoge.cgi」ってコマンドラインからすれば実行出来るのと同じよう な感じです。このとき perl は hoge.cgi を自らテキストで読み込んで、 自ら解析して実行結果を表示させています。書けば書くほど深みにはまる 感じなのでこれでやめておきます。


結論

上記の記述ではいろいろ矛盾してる箇所はあるけど、どうやらファイルの作成者であり、 書き込み対象ファイルとそれが置いてあるディレクトリのパーミッションさえあれば 問題NASAそうである。

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル