web-dev-qa-db-ja.com

IIS7クラスターで実行中のPHP)での500内部サーバーエラーのデバッグ

最近、私のISPは私たちのウェブサイトをIIS7.0高可用性クラスターに切り替えました。 WebサイトはPHP5.2.1で実行されており、アップロードできるのはファイルのみです(したがって、レジストリの調整はありません)。以前にWebサイトをテストしたことがあり、すべてが機能しているように見えましたが、チェックアウトページが次のように失敗します。

500内部サーバーエラー。探しているリソースに問題があり、表示できません。

エラーメッセージが表示されるように、これはあまり有益ではありません。私はもう試した:

ini_set('display_errors', 1);
ini_set('error_log', $file_php_can_write_to );

しかし、どちらも何もしていないようです。

より良いデバッグ出力を得る方法を知っている人はいますか?

14
Matthijs P

編集: serverfaultの同様の質問 があるようです。見てみな

IIS7カスタムエラーをオフにすると、IIS7のカスタムエラーモジュールによって検閲されることなく、アプリケーションからのエラー応答をリモートクライアントに送信できます。

IIS7管理ツールからこれを行うには、「スタート」>「実行」>「inetmgr.exe」を実行し、左側のツリービューでWebサイト/アプリケーション/仮想ディレクトリを選択し、「エラーページ」アイコンをクリックして「機能の編集」をクリックします。 [設定]アクションをクリックし、[詳細エラー]を選択します

ソース

33
Shoban

サーバーを変更すると、アプリを読み込めなくなることがよくあります。ブラウザにアプリをロードする代わりにphp.exeを実行して、この問題を解決しました。

1)コマンドライン> C:\php\php.exeまたはを使用して実行します

2)Windows Explorerを実行して探し、c:\php\php.exeをダブルクリックします。

3)どのDLLで競合が発生し、500エラーが発生しているかを確認します。

4)Windowsバージョンに適したDLLを見つけることで競合を解決すると、ブラウザーからアプリを表示できるようになります。

幸運を祈ります。

1
RGA