別のパソコン上で動作している XAMPP の PHP(Apache)を、手元の VS Code でデバッグするための手順。理由があって Xdebug は 3系ではなく2.9系を使用する場合の手順。古い設定となるので記録として残しておく。
前提
環境は下記を対象
- デバッグのターゲットは別の Windows 上の XAMPP (PHP + Apache)
- 手元は Visual Studio Code
- PHP のバージョンが 7.4 と古く Xdebug は 2.9系を使用(3系ではない)
構成
サーバ側(XAMPP が動作している Windows PC)
クライアント側(VSCode が動作している PC)
手順
サーバ側(XAMPP が動作している Windows PC)
- Xdebug をインストール
- 古いバージョンなので下記から
- Xdebug: Historical Releases
- ダウンロードした dll ファイルを
C:\xampp\php\ext\に格納- パスは XAMPP のインストール場所によって異なる
php.iniに以下を追加(Xdebug 2.9系向けの設定)
zend_extension="C:\xampp\php\ext\dll ファイル名" [Xdebug] xdebug.remote_enable = 1 xdebug.remote_autostart = 1 xdebug.remote_port = 9000 xdebug.remote_connect_back = 1 xdebug.idekey = VSCODE xdebug.remote_handler = dbgp xdebug.remote_mode = req
クライアント側(VSCode が動作している PC)
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug 2.9",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings": {
"サーバ側のパス、例えば C:\\xampp": "${workspaceFolder}"
}
}
]
}
- ファイアウォールでポート9000を開放