phpで生成されるapache所有のファイルの属性が600や666になったりします。

666ならシステムに不具合は起こらないものの
600ではファイルを読み込む事が出来ず動作が停止してしまいます。
本来は644です。
SSHからumaskを入力すると022が表示されるので正常なのですが
umaskを確認する場所が間違っているのでしょうか…
既存のファイルの属性は変わりませんが
新たに生成されるapache所有のファイルの属性が変わってしまいます。
どうすれば新たに生成されるapache所有のファイルの属性を644の一定に保つことができるでしょうか?
スクリプト中にapache所有のファイルの属性を指定する方法でも構いません。

よろしくお願い致します。

使えるネット 仮想専用サーバ
PHP 5.1.6
Apache/2.2.3

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2009/01/31 19:40:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:b-wind No.1

回答回数3344ベストアンサー獲得回数440

ポイント35pt

600ではファイルを読み込む事が出来ず動作が停止してしまいます。

本来は644です。

なんで apache ユーザーの読み書きは出来るはずなのに停止してしまうのかはよく分かりませんが、

PHP で生成しているなら、PHP で処理すべきポイントでは?


PHP: umask - Manual

スクリプト内で動的に umask は変更できます。

id:tail_furry No.2

回答回数74ベストアンサー獲得回数7

ポイント35pt

PHPでファイルを生成した後に、chmodで生成したファイルを644にその都度変更したらどうでしょうか?

PHP: chmod - Manual

  • id:tezcello
    環境依存なので、一般的な回答としては umask より chmod を利用するのを勧めるのがベターかと。
    umask のマニュアルページにも「注意」の項にそのような記述があるので、チャンと読めば解っていただけるとは思いますが。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません