[PHP]PhpStormからリモートデバッグする

新しいメンバーのためにPhpStormのリモートデバッグの設定方法を記事にします。

php.iniの設定

末尾にXDebugの設定を以下のように追加する。

zend_extension=/usr/lib64/php/modules/xdebug.so
xdebug.remote_enable = On
xdebug.remote_autostart = On
xdebug.idekey = IDEKEY
xdebug.remote_host = 192.168.17.1

xdebug.soのパスはsudo find / -name "xdebug.so"などで探して指定します。
xdebug.idekeyには、任意のIDEKEYを指定します。ここで設定したIDEKEYをPhpStormのDebug設定で使用します。
xdebug.remote_hostはサーバから見たPhpStormを実行するホストのIPアドレスを入れます。

※アスタの開発環境ではsetup.shで設定してしまうのでシェル冒頭の変数だけセットすればOKです。

PhpStormの設定

Serverの追加

Preferences > Languages & Frameworks > PHP > Servers
+ボタンから、リモートデバッグするサーバを追加します。
任意のNameをつけて、Hostを入力。Absolute path on the server はリモートとローカルのパスが一致するように設定します。

Remote Debug設定

メインメニューのRun > Edit Configurations… > PHP Remote Debug
PHP Remote Debugの上で+ボタンを押してリモートデバッグの設定を追加します。

任意のNameをつけて、Filter debug connection by IDE key にチェック*1 し、先に登録したServerを選択。
IDE key(session id) にはサーバのphp.iniに設定したxdebug.idekeyを入力します。

Debugを実行する

Run > Debug から、先程追加したリモートデバッグの設定を選択すれば、デバッグが開始されます。

あとはコードウィンドウの行数表示の右をクリックしてブレークポイントを置き、デバッグしたいページをブラウザで表示させればデバッグが始まります。

デバッグを開始するとPhpStormの下部にDebugツールが開くので、ここからStepの操作を行ったり、その時点の定数や変数の値を確認することができます。

参考

PHP(xdebug)+IntelliJでブレークポイント置いてるのに、そこで止まってくれないとき – カイワレの大冒険 Third

  1. IDEKEYがサーバと一致しない場合デバッグしないということかな []
スポンサーリンク
336x280_1
336x280_1

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
336x280_1