web-dev-qa-db-ja.com

500内部サーバーエラーが発生するのはなぜですか? -IIS7-FastCgiModule PHP

外部から「500-内部サーバーエラー」が発生します。ローカル接続では、500のエラーとデバッグ情報が提供されます。問題はFastCgiModuleにあるようです:

HTTP Error 500.0 - Internal Server Error
An unknown FastCGI error occured

Module  FastCgiModule
Notification    ExecuteRequestHandler
Handler PHP_via_FastCGI
Error Code  0x80070005

Cgiを強制的に実行して接続をテストするコマンドを実行しました。

"C:\Program Files (x86)\PHP\php-cgi.exe" <path to website>

これは、500エラーではなく、PHP/HTMLコードを出力しました。問題はIISにあると思います。サーバーは金曜日に問題なく稼働し、私が認識している変更は行われませんでした。サーバーを再起動しても何も変わりませんが、エラーは表示されます。

これが正しいウェブサイト/フォーラムに提供されたことを願っています。このエラーが発生する理由を誰かが知っていますか?

編集:500エラーに追加され、「不明なFastCGIエラーが発生しました」

2
Fleppar

500エラーは、C:\Program Files (x86)\PHP\php-cgi.exeを実行しているユーザーが、PHPファイルを含むディレクトリに対する適切な権限を持っていないために発生する可能性があります。

  1. サービスマネージャーをチェックして、このプロセスを実行しているユーザーを確認します。
  2. セキュリティACLでPHPディレクトリとファイルを確認します。
  3. (1.)のユーザーが読み取り/実行およびディレクトリのアクセス許可を持っていることを確認し、これらをすべてのファイルに伝達します。
1
leftcase

同じエラーメッセージが表示され、問題がdllが見つからないことがわかりましたmsvcr71.dll。 Mysqlの下でこのdllのコピーを見つけ、それを

C:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP5\ディレクトリ、および念のためにC:\Program Files (x86)\Parallels\Plesk\Additional\PleskPHP5\etcディレクトリ。

0
Al Vigil