Удаленная отладка PhpStorm с помощью xdebug

Я хочу отлаживать с помощью PHPstorm IDE и xdebug моего сайта на сервере. Локально работает отлично, но когда я хочу настроить отладку с сервера, я не могу.

Я установил xdebug на сервере с такой конфигурацией:

xdebug.remote_enable=1
xdebug.remote_connect_back=1
xdebug.remote_handler=dbgp
xdebug.remote_host=MY IP
xdebug.remote_port=9000
xdebug.idekey=PHPSTORM

Затем я устанавливаю в PHPSTORM в «Редактировать конфигурации» «Удаленная отладка PHP» и «Сервер»

На сервере я положил:

Name: xxxx
Port: 80
Host: Url of my site
Debugger: Xdebug
I checked "Use Path Mapping" and in File/Directory i put my local    proyect path "/home/mysite"In "Absolute path on the server" i put the path in the server where are the proyect: "/var/www/html/mysite"

В «PHP Remote Debug» я поставил:

Name: xxxx
Servers: the server created previously
IDE key: PHPSTORM

С этими настройками не работал. Я использую Chrome с расширением Xdebug с ключом Ide для включения PHPstorm.

Чего мне не хватает на работу?

4

Решение

Я думаю, что однажды у меня была такая же проблема на работе, когда я только что вылупился. Когда XDebug работает на другом сервере, порт механизма XDebug, конечно, открыт только в локальной системе (на удаленном сервере).

Лучший способ передать этот порт вашей машине разработки — это создать безопасный SSH-туннель между этими двумя системами. На вашем локальном компьютере в файле ssh-config (часто расположенном в ~ / .ssh / config) выполните следующее:

Host example
Hostname 192.168.2.1
User johndoe
LocalFoward 9200 127.0.0.1:9000

Теперь, когда на консоли

ssh example

он подключится к удаленной системе (192.168.2.1) с именем пользователя (логином) johndoe и туннелирует порт 9200 на удаленном компьютере к порту 9000 на вашем локальном компьютере. Конечно, вы также можете использовать один и тот же порт для обоих.

Надеюсь, это поможет. 🙂

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]