## (x)Debug PHP CLI script via SSH without port forwarding

There are lots of examples on the net which all tell you that you should forward port 9000 to your local machine. This is helpful and needed if you want to debug a "real" remote machine, like a production or staging server.

But I want to debug a CLI script on a virtual machine (VM) and want a script which connects back on my local network to my host machine.

I know puphpet is doing this with the builtin xdebug script, but I can't find it on the net, so here it is:

#!/bin/bash
XDEBUG_CONFIG="idekey=xdebug" php -dxdebug.remote_host=echo $SSH_CLIENT | cut -d "=" -f 2 | awk '{print$1}' "\$@"


Just put it in a file ~/bin/xdebug and make it executable, then you can run your cli file with

xdebug file.php


and it should reconnect to your PHPStorm (or whatever other IDE you use).