| ブログトップ | PHP関連 |

あぁ勘違い ー パーミッションについて

自分はこれまで、パーミッションについて

  • 実行:4
  • 書き込み:2
  • 読み込み:1

だと思っていました。

だって、PHPは644(または604)で動くんだもの。

実行権限がついているのは当然でしょ、と思っていたわけです。

しかし実際は皆さんもご存知の通り

  • 読み込み:4
  • 書き込み:2
  • 実行:1

と間逆!

ドヤ顔で説明していたところに、違いますと指摘されたものだからこれは恥ずかしい・・・

では、なぜPHPは644(または604)で動作するのか。

答えはこのブログに書かれていました。

PHPでパーミッション(実行権)の設定が必要ない理由 | ちほちゅう

なるほど、PHPはapacheモジュールで、apache内で実行されるから、apacheが読み込みさえできれば動作するということですね。

・・・でも待てよ。

PHPにはCGIモードなるものもあったはず。

PerlなどのCGIは755・705で動作するから、CGIモードだと755・705か?

いやしかし、運用している専用サーバのPHPはCGIモードにしていて、644で動いていたはず。

・・・そういえば。

と、専用サーバを設定する際に、suEXECという設定を行ったことを思い出しました。

suEXEC サポート - Apache HTTP サーバ

[引用]
suEXEC 機能により、Apache ユーザは Web サーバを実行しているユーザ ID とは 異なるユーザ ID で CGI プログラムや SSI プログラムを実行することができます。CGI プログラムまたは SSI プログラムを実行する場合、通常は web サーバと同じユーザで実行されます。

なるほど、だからか。

所有者権限の実行でありながら、CGIプログラムを実行することが出来るわけですね。

だから所有者が読み込みさえできればよいと。

 

日々の生活にhappyをプラスする|ハピタス

このエントリーをはてなブックマークに追加

LINEで送る

総合管理者 | 2015年10月17日 | コメント(0) | トラックバック(0) | PHP関連

トラックバック

トラックバックURL

コメントする

※メールアドレスが公開されることはありません。

名前 *
メール*
URL
Copyright(c) 2010 - 2017 ダリの雑記