プロファイリングの目的で、AWS クラウドのリモート サーバーに Xdebug をインストールしようとしています。phpinfo() を使用してチェックした Xdebug をインストールし、サーバーでプロファイリング オプションを有効にする設定をいくつか保持しました。有効になっていることを確認しました。
pro filer の出力ログをリモート サーバーのディレクトリに保存しています。Kcachedgrind を使用してこれらのファイルを開きたいと思います。だから私はKcachesgrindをインストールしました。
PHP.ini ファイルで使用した設定は以下のとおりです。
zend_extension="/opt/lampp/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
xdebug.profiler_output_dir = "/opt/lampp/htdocs/profiler/logs"
xdebug.profile_output_name = cachegrind.out.%t-%s
xdebug.remote_enable=On
xdebug.remote_host="ip-10-125-11-57"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.show_local_vars=On
xdebug.collect_return=On
xdebug.collect_params=4
xdebug.profiler_enable=On
xdebug.profiler_enable_trigger=1
上記の設定では、xdebug.remote_host という名前のファイルが表示されます。通常は localhost ですが、リモート サーバーにいるので、サーバーのホスト名をそこに保持しました。Kcachegrind を使用してファイルを開こうとすると、以下のエラーが発生します。
Kcachegrind: Can't connect to X server