Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

IIS上のPHPでファイル書き込みができません(再送)

2,212 views
Skip to first unread message

海星

unread,
Sep 30, 2009, 9:28:04 PM9/30/09
to
 TechNetでも載せたのですが、ちょっと行き詰まっているので、どなたかお
教え下さい。
 新しいノートパソコン(OSはXP Pro.)上でIIS5.1をスタートさせ、PHP5.2を
働かせてみました。とりあえず、動作するのですが、テキストファイル書き込み
とSQLiteデータベースの書き込みは、以下のエラーメッセージ

[function.fopen]: failed to open stream: Permission denied

[function.sqlite-query]: attempt to write a readonly database

がブラウザに表示されて、書き込めません。
IISマネージャーやフォルダの読み取り専用指定など見当つけて設定し再起
動してみたのですが、やはりうまく書き込めません。これが、既存のパソコンの
Apache サーバなら同じスクリプトが問題なく働きます。IISのセキュリティ設定ではないかと思われますが、どうも分かりません。
どうやってPHPスクリプトがファイルに書き込めるようにするのか、どうぞお知恵をお貸し下さい。

                         海 星


JR K yoshikawa

unread,
Oct 1, 2009, 2:04:31 PM10/1/09
to
> IISマネージャーやフォルダの読み取り専用指定など見当つけて設定し再起

IIS Permission、 NTFS Permission 双方を与えているということでしょうか?

とりあえず、 下記の文書を参照して、
それぞれ、記述されている項目を確認されてみては如何でしょうか。

IIS 5.1 Permission problems
http://www.webmasterworld.com/forum47/599.htm

仮想ディレクトリのセキュリティおよび認証を構成するには
http://msdn.microsoft.com/ja-jp/library/zwk103ab.aspx

IISAnswers Articles
Authenticationの項目
http://www.iisanswers.com/IIS51.htm

"海星" <@discussions.microsoft.com> wrote in message
news:A2198B19-1EF5-45EA...@microsoft.com...

海星

unread,
Oct 16, 2009, 9:49:01 PM10/16/09
to
 JR K yoshikawaさん、大変レスが遅くなり、申し訳ありません。
 ご紹介いただいたWebページを調べてみたり、IISでサーバを運用
している地元のプロバイダさんに聞いたりしてみて、何度も設定&
再起動をして、今日ようやくPHPスクリプトでファイル操作でき
るようになりました。
 少々複雑ですが、参考のために私の対処方法を説明してみます。

 要するにIISサービスにファイル書き込みや実行権限を与えてや
ればうまくいくようです。

 [コントロールパネル]->[管理ツール]->[インターネット
インフォメーション サービス]->[既定の Web サイト]->[プロ
パティ] とダイアログに潜り込んでいき、この既定のWebサイトの
プロパティの[ディレクトリ セキュリティ]タブを選択し、[匿
アクセスおよび認証コントロール]の項目の編集ボタンを押しま
す。
 そして、この[認証方法]ダイアログの[匿名アクセス]の項目
をチェックし、[参照]ボタンを押し、Administrator 権限のユー
ザー名を[名前の確認]で確認の上、埋め込みます。そして、Admi
nistratorの[パスワード]を埋め込み、[OK]ボタンでいった
んこのダイアログを閉じます。
 さらに開きっぱなしにいているはずの[インターネット イン
フォメーション サービス]ダイアログ上の[既定の Web サイト]
を選択し、[メニュー]->[操作]->[停止]と[メニュー]->[
操作]->[開始]を選択して、規定のWebサイトを再開します。
 ブラウザでイントラサイトを表示させて、再開が成功しているこ
とを確認します。そして、PHPファイルを指定して、ファイル関係
の書き込みができることが確認できれば設定成功です。操作の手順
によっては、ユーザー名とパスワードの確認を求められるかもしれ
ません。その場合は、先ほどの既定のWebサイトのプロパティの
[ディレクトリセキュリティ]タブの[認証方法 匿名アクセス
ダイアログを再び開けて[IISによるパスワード管理を許可する]
のチェックマークを付けます。そうすれば、ユーザー名とパスワー
ドの確認は求められなくなります。

 以上、具体的に説明しても分かり辛いのが恐縮ですが、もし同じ
ようなボトムネックに突き当たった方の参考になるかもしれないと
考え、私の処置を載せておきます。
 どうにかPHPスクリプトを使ってファイルに書き込めるように
なったのは以前に処置したフォルダの読み取り専用指定の解除や
ユーザの権限の指定なども関係あるのかもしれないので、みんなに
有効かどうか分かりませんが、手掛かり程度になれば幸いです。

 IISもASPもよく知らないので、迅速に吉川さんにお答えいただき
何とか投げ出さずに問題を解決できました。これで、ネットワーク
版部活動データベース処理システムの開発がはかどります。ありが
とうございました。

                     海 星

0 new messages