PHP: Отлаживаем скрипты командной строки на удаленной машине
Отладка бекенда на PHP уже ни у кого не вызывает проблем: достаточно правильно настроить расширение xdebug (или zend debugger), поставить расширение в свой браузер и можно отлаживать, трассировать или профилировать бекенд.
Но что делать, когда нам требуется отладить консольную утилиту на удаленном сервере? В браузере выбрать пункте enable xdebug нельзя, а если у нас и получится передать IDE_KEY, то оно не знает, где располагается среда разработки и куда делать connect_back.
Это все легко решается одним маленьким скриптом (Важно сделать замечание: это будет работать только когда мы подключены по SSH).
#!/usr/bin/env bash
IP=`echo $SSH_CLIENT | awk "{print $1}"`
PHP='/usr/bin/php -d 'xdebug.remote_host=${IP}' -d 'xdebug.remote_autostart=1''
$PHP $@
Теперь достаточно скомандовать
$ php-debug.sh yii
И на рабочей машине мы сразу увидим запрос на подключение.
Категории: Разработка HowTo