В XDebug для Eclipse как удаленные пути отображаются на локальные пути?

0

Хотя теперь я понимаю, что попытка заставить Eclipse остановиться на ваших контрольных точках, когда скрипты PHP выполняются из запросов POST и GET из ajax/curl, заключается в том, чтобы убедиться, что переменная XDEBUG_START_SESSION установлена во всех запросах, которые вы хотите, чтобы отладчик был известно, что это работает только тогда, когда все ваши пути на веб-сервере являются нормальным относительным видом.

Тем не менее, если у вас есть некоторые псевдонимы на веб-сервере, например, с помощью директивы httpd Alias, XDebug не сможет связать пути файлов в вашей рабочей области с их путем в URL-адресе сайта.

У меня есть следующая настройка каталогов:

Изображение 174551

Вот как настраивается веб-сервер:

ServerName test.local
DocumentRoot "C:\Users\me\projects\testproject\start\here"
Alias /post "C:\Users\me\projects\testproject\post"

<Directory "C:\Users\me\projects\testproject">
    Require all granted
</Directory>

Я бы подумал, что это вкладка "Отображение пути", найденная в " Debug Configurations → Server → Configure... → Path Mapping. Всюду, где я смотрю, мне говорят, чтобы установить Path on server на путь файловой системы на веб-сервере для каталога или файла и установить Local path к его пути в вашей файловой системе или рабочей области. Я также попытался установить Path on server на путь URL-адреса сайта, который я хотел сопоставить с Local path, но ни одна из конфигураций не приводит к разрыву строки в сценарии POSTed PHP.

Я включил ведение журнала для XDebug, чтобы сравнить сообщения для точки останова, что она правильно останавливается, потому что она находится в файле, от которого начинается отладчик, и точка останова в скрипте, выполненном посредством запроса POST, который, к сожалению, не останавливается. Он остановится в этом файле, если путь /post соответствует каталогу сообщений в DocumentRoot, но не в том случае, если почтовая директория находится где-то в другом месте, а "поддельный" /post путь в URL-адресе сайта сглажен.

В моем файле журнала XDebug имеется несколько записей журнала для строки 28 в index.php, файл, для которого он правильно разбивается. Строка 3 в message.php также имеет запись, а путь с URL-кодировкой выглядит корректно, но я не вижу те же записи.

Как настроить Eclipse, чтобы знать, что /post на сервере означает /My Project/post в рабочей области?

  • 0
    Я поставил в тупик сообщество PHP? :-) Конечно, кто-то был в состоянии установить точки останова во всем PHP-приложении, которое любит скручивать / ajax повсюду и использует пути с псевдонимами веб-сервера ...
Теги:
curl
xdebug

1 ответ

0
Лучший ответ

Ой... это был просто вопрос установки Accept удаленного сеанса (JIT) на локальный, в моем случае, или просто что - нибудь, кроме off:

Изображение 174551

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню