ホームページ > バックエンド開発 > PHPチュートリアル > PHP が fastCGI モードで実行される場合のファイル システムのアクセス許可の問題と解決策_PHP チュートリアル

PHP が fastCGI モードで実行される場合のファイル システムのアクセス許可の問題と解決策_PHP チュートリアル

WBOY
リリース: 2016-07-13 09:54:18
オリジナル
1090 人が閲覧しました

PHP が fastCGI モードで実行される場合のファイル システムのアクセス許可の問題と解決策

IIS7.0 で FastCGI モードで PHP 動作環境を構成し、PHP プログラムが正常に実行できることをテストした後、PHP プログラムを展開し、元のプログラムをインポートします。データと構成情報。すぐに問題が発生しますので、以下に詳しく記録します。

今日は IIS で php デモを実行します。IIS での Web サイトの構成は次のとおりです。

アプリケーション プールは統合モードの .net Framework 2.0 (PHP は fastCGI モードで実行されるため、2.0 か 4.0 は関係ありません) アプリケーション プール ID は IIS に組み込まれた NETWORKSERVICE として構成され、使用される認証方法は匿名認証です。

ローカルWebサイトを開いてphpページにアクセスしますが、500エラーが発生します。

これは権限の問題です。最も簡単な解決策は、C:UsersAdministratorPhpstormProjectsphpDemo の権限をEveryone に設定し、フル コントロールを許可することです。

php ページに再度アクセスして成功しました:

上記の方法は非常に簡単ですが、あまりにも安全ではありません。通常、これを実行するためにローカルのデモをセットアップするのは問題ありませんが、実際にオンラインになると、遅かれ早かれ問題が発生します。

そこで、リセットし、ディレクトリ内の読み取り専用権限をNETWRORKSERVICEアカウントに与えて、再試行しました

しかし、問題はまだ解決されていません
アクセスすると401エラーが発生します。

エラー メッセージには、ログインしているユーザーが匿名であるという表示が含まれています。Web サイトで認証を確認します (その後、[匿名認証] -> [編集] をクリックします)。ログイン方法が匿名の場合、デフォルトでログインすることがわかります。 Web サイトで使用されるユーザーは IUSR (これは、私たちが目にする匿名ログイン ユーザーです)

解決策は次のとおりです。
1. 先ほどのNETWORKSERVICEの設定と同様に、IUSRをC:UsersAdministratorPhpstormProjectsphpDemoの読み取り権限に設定します。

2. または、アプリケーション プール ID を使用することを選択します。

テスト後、方法 1 と 2 は両方とも成功しました。

注: NETWORKSERVICE は、IIS7 の iis_iusers ユーザー グループに属します。NETWORKSERVICE の以前の設定を iis_iusers の設定に変更することもできます。これによっても問題は解決されますが、権限はさらに緩和されます。
以上がこの記事の全内容ですが、皆さんに気に入っていただければ幸いです。

http://www.bkjia.com/PHPjc/998352.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/998352.html技術記事 PHP が fastCGI モードで実行される場合のファイル システムのアクセス許可の問題と解決策。IIS7.0 で FastCGI モードで PHP 実行環境を構成し、PHP プログラムが正常に実行できることをテストした後、PHP プログラムをデプロイします。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート