📘

Xdebug 3.xに上がったときの名前変更

2021/05/28に公開

最近、docker imageのほうでxdebugのバージョンが3系になって警告が出るようになってしまったので変更に関して調べて書いたものになります。

メモ程度に書いたのですが、どうやら本家に日本語表示のものもありましたね・・・(英語を見ていた)
https://xdebug.org/docs/upgrade_guide/ja

xdebug.remote_connect_backxdebug.discover_client_host

- xdebug.remote_connect_back = 0
+ xdebug.discover_client_host = 0

xdebug.remote_autostartxdebug.start_with_request

- xdebug.remote_autostart = 1
+ xdebug.start_with_request = yes

ちなみに、これじゃなくとも未指定だとtriggerモードというモードになりましてXdebug helperといったChrome拡張機能によって動かすことも可能になってるようです。

xdebug.remote_enablexdebug.mode

- xdebug.remote_enable = 1
+ xdebug.mode = debug

xdebug.remote_hostxdebug.client_host

- xdebug.remote_host = client.hostname
+ xdebug.client_host = client.hostname

xdebug.remote_portxdebug.client_port

ついでにデフォルトポートが9000から9003に変わったみたいです。やっぱり9000はちょいちょい使われてたからですかね・・・
ついでにいうと9001も駄目なことがあって、windowsのintelグラフィックによって専有されてしまうこともあるようなので9003にしたのは良き話。
結構勘違いするけど、このポートはWindowsやMacといったクライアント側のポートで、Docker側のポートとかではない。

- xdebug.remote_port = 9000
+ xdebug.client_port = 9003

xdebug.remote_handlerは使われなくなった

ずっとDBGpハンドラしかサポートしてなかったので使われなくなったみたいです。

xdebug.remote_logxdebug.log

- xdebug.remote_log="/tmp/xdebug_log"
+ xdebug.log="/tmp/xdebug_log"

余談

Xdebug helperをいれることで自動スタートではなくhookによるデバッグモードとの切り替えができるようになる。便利。

Discussion