web-dev-qa-db-ja.com

IIS6 + PHP + FastCGI 500エラー-どこから探し始めますか?

Php-cgi.exeを使用するようにFastCGIを使用してIIS6をセットアップしました。

テスト環境で実行しようとしている、外部の関係者によるphpWebサイトがいくつかあります。

単純なWebサイトの1つで、FastCGIエラーページが表示されます。これはすべてのページで発生するわけではなく、一部のページで発生しているように見えますが、他のページは正しく表示されています。

  • 質問:この問題についてもう少し情報を得ることができるように、どこかでロギングを有効にする方法はありますか?

私は調べました

  • イベントログ
  • IIS Webサイトログ(c:\ windows\system32\Logfiles)
  • PHPログ

ただし、IIS Webサイトログに500ページの戻りが記載されている場合を除いて結果はありません。

  • 質問:問題が発生している可能性のある場所をデバッグ/チェックする他の方法はありますか?

ページは次のようになります。

FastCGIエラー

FastCGIハンドラーは要求を処理できませんでした。エラーの詳細:

FastCGIプロセスが予期せず終了しましたエラー番号:-1073741571(0xc00000fd)。エラーの説明:不明なエラーHTTPエラー500-サーバーエラー。インターネットインフォメーションサービス(IIS)

回答

どうやら、エラーメッセージはスタックオーバーフローを意味するので、デバッグがメッセージです。私はPHP開発者ではないので、これはかなり骨の折れるプロセスでした。しかし、問題をAjaxリクエストに絞り込みましたが、これはあらゆる種類のリクエストで発生する可能性があると思います。

リクエスト自体により、サーバーは500を返します。Fiddlerでリクエストを試した後、GETリクエストのCookieエントリにPHPSESSIDアイテムが含まれていることがわかりました。これを省略すると、リクエストは機能します。

したがって、この問題の答え(この場合)は、リクエストからPHPSESSIDを除外することです。あとは、その方法を考え出すだけです:)

3
Bertvan

エラーコード-1073741571 (0xc00000fd)はスタックオーバーフローを意味します。コードをデバッグする必要があります。

3
Vivek Kumbhar

http://forums.iis.net で検索してみてください。 PHPをアップグレードしてみることを示唆しているようです。または、アプリケーションに問題があり、PHPまたはfastCGIプロセスがクラッシュします。

幸運を。

0
Dan Andreatta

これに対する答えを探している人のために、私は「500内部サーバーエラー」+ PHP +高速CGIで約2時間過ごしました、そしてエラーはweb.configファイルがにあったということでしたmy PHPアプリケーションフォルダー(IISが自動的に作成しました)。

ファイルを削除することにより、アプリケーションは正常に機能しました。

0
lelis