Windows Azure WebサイトでPHPサイトのエラー情報を取得する方法
Windows Azure Webサイトで動作しているPHPサイトのエラー情報の取得方法について説明します。
ロギングオプションの有効化
Windows Azure 管理ポータルで、WebサイトのCONFIGUREタブを選択し、3つのロギングオプションを有効化します。3つのロギングは、Webサーバーのログ、詳細なエラーメッセージ、失敗したリクエストのトレースです。それらを有効化するために、diagnosticセクションを探し、それぞれをONにし、SAVEボタンをクリックします。
それらのログを確認する方法の1つは、FTP経由で参照する方法です。Azure管理ポータルの右端のパネルで、FTP HOSTNAMEとDEPLOYMENT ?FTP USERを参照します。FTPクライアントを使用して、接続します。
そのほかにログを確認する方法として、MacとLinux用のWindows Azureコマンドラインツールを使用する方法があります。次のコマンドを実行すると、.zipファイルでダウンロードすることができます。
azure site log download <site name>
このコマンドは、Linux/Macのスーパーユーザーで実行する必要があります。
PHPエラーレポーティングの設定
PHP.iniで次の設定をします。
display_errors=On
log_errors=On
error_log = "D:\home\site\wwwroot\bin\errors.log"
XDebugの有効化
FTP経由でXDebugプロファイルを取得することができます。
Windows Azure WebサイトでのXDebugの有効化方法についてを参照してください。
メモ
サイトでエラーを調べ始めると、favicon.icoの404エラーが大量に記録されていることに気づきます。エラーを解消するには単純に、favicon.icoをrootディレクトリに配置することです。
情報源
Brain氏のBlog投稿「Getting Error Info for PHP Sites in Windows Azure Web Sites」をざっくりと意訳して紹介した投稿です。