@e_do
Упертый оптимист

Как настроить xdebug + phpstorm на удаленном сервере 2.0?

Напишу сразу для тех, кто потянется за репликами как "гуглить не учили" или на "тостере есть традиция ", перерыл оооочень много, сначала безобидное очередное непонимание ситуации казалось временным, но после перебора очень много материала по данной теме. мне уже кажется это реально проблема с которой столкнулся не только я. Очень надеюсь на помощь людей, которые дельным советом покажут куда копать. Этот вопрос я задал неделю назад, но пару коментов высмеяли вопрос, видимо моя вина вопрос изложил поверхностно, и без кода особо и картинок.

И так суть вопроса, Как настроить xdebug чтобы отлавливать код на удаленном сервере в phpstorm.

Прелюдия.
Занимался себе развитием своего сайта тихонько. На локалке стоит xampp, настроен xdebug, вся работа деплоится с phpstorm проекта на локальный сервер, а после тестирования уже руками закидывал нужное в рабочий магазин.
При апдейте одного из модулей, столкнулся с тем, что модуль взаимодействует с чужим кодом (модуль на ioncube c привязкой к домену), который нет возможности включать на локалке и дебажить код. Решил что нет другого выхода , что настроить xdebug на удаленке и проследить взаимосвязь с чужим кодом. И тут началось, если коротко, то уже неделю копаю инет, не работает (((.
Что делал для этого.

1. Для начала установил на сервер xdebug. на centos 6 установил расширение
yum install php-pecl-xdebug.x86_64

2.настроил php.ini
zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.6.so
zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.6_ts.so
zend_extension = /usr/lib64/php/modules/xdebug.so
xdebug.remote_enable = 1
xdebug.remote_host = myIP
xdebug.remote_port = 9000
xdebug.remote_handler = dbgp
xdebug.remote_connect_back = 1
xdebug.remote_autostart=on
xdebug.idekey = "PHPSTORM"

На сервере установлен VESTA, как видно из записей, там еще установлен ion_cube

3. На phpstorm настроил удаленный интерпретатор
5dc1c7043d687383127894.png

4. Создал сервер
5dc1c7d2be1cb227661003.png

5 Добавил Deployment по фтп для синхрона и настроил mapping
5dc1c93d77859767124605.png
5dc1c944bd141067104889.png

6 Проверил валидацию
5dc1c9cdc1894738529442.png

7. Создал конфигурацию для отладки
5dc1ca86008d5910006165.png

В браузере уже стоит расширение по отлавливанию кода, так как уже работал на локальном сервере.
И .... всё ))) начались танцы с бубнами.
Для начала поставил Break at first line , посмотреть как работает
5dc1cbe25f6ea407080072.png

Реакции 0.
Перекопал весь инет , пробовал. не отлавливает. Мысли были разные, что phpstorm игнорирует удаленный php и слушает локальный, но у расширений разные версии , это видно в скрине, на удаленке 2.5.5 на локальном 2.2.5. Через пару дней поисков ошибки, вспомнил что надо порт для защищенного соединения прописать 443 , обрадовался, думал в этом причина, тоже не работает.
Читал что phpstorm не дружит по этому вопросу с https, для проверки сделал новый проект для обычного соединения (есть домен запасной, установил движок на новый сайт, настроил, тоже не работает). Читал про ssh tunnel. Настроил соединение , в putty
5dc1d0e85185c292463165.png
в php.ini
xdebug.remote_host = 127.0.0.1
тоже не работает у меня ((.
Уже от отчаяния смонтировал удаленку к себе на windows, с надеждой запустить дебаг как локально, но что-то не совсем понимаю как это может работать, забросил.
В поисках ошибок столкнулся на такое , что навело сомнение
5dc1d2e210114918865814.png
в инфо
5dc1d38a3a1ba050976169.png
хотя в php.ini стоит
xdebug.remote_enable = 1
пробовал настроить конфигурацию PHP Web Page, тоже настраивается, но не отлавливает.

Помогите, очень надеюсь что решение где то рядом и я его не вижу.
Чтобы окончательно удостовериться , что на стороне сервера xdebug работает корректно, думаю как посмотреть что расширение xdebug что-то отсылает на порт 9000. Правда не знаю как , в админке не силен ((.
Подскажите куда копать, HELP!
  • Вопрос задан
  • 168 просмотров
Пригласить эксперта
Ответы на вопрос 2
@PapaStifflera
Родился, вырос...
Может NAT?
Ответ написан
@e_do Автор вопроса
Упертый оптимист
Поделюсь, может кому-то пригодится. Как всегда всё оказалось проще , чем искалось. Решение в роутере, вернее нужно было пробросить порты нужные на роутере. После этого заработало, но не всё ((.
Появилась еще одна проблема. Не хочет корректно работать с https. Только если включен Break at first line. Не видит брекпоинты внктри проекта. И еще на определенных страницах ответ 500 в браузере.
Насколько понял, связано с правилами в .htaccess.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы