Netbeans и Xdebug в Linux

Я установил Xdebug, и я могу подтвердить с phpinfo(), что он правильно установлен. Я сделал все шаги, приведенные на всех сайтах, которые приходят с я google "netbeans xdebug install и т.д.".

Он по-прежнему не работает в Netbeans. Есть ли советы, которые кто-то может предложить?

Вот мой раздел отладки php.ini...

[xdebug]
zend_extension = /usr/lib/php5/20090626/xdebug.so
xdebug.remote_enable = 1
xdebug.remote_mode = "req"
xdebug.remote_handler = dbgp
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9000
xdebug.idekey = "netbeans-xdebug"

Любая помощь будет принята с благодарностью!

Ответ 1

Поскольку доступная мне информация очень разрежена, я должен более подробно описать настройки.

Настройки Netbeans и xdebug.

Ubuntu 12.04 LTS Precise Pangolin

Что должно быть установлено.

enter image description here

enter image description here

Глобальные настройки:

Инструменты - Опции

enter image description here

enter image description here

Настройки PHP:

С phpinfo() вы получите.. см. ниже изображение.

enter image description here

Важно только one php.ini! Посмотрите Загруженный файл конфигурации. Если вы написали запись xdebug в другой файл "php.ini", обязательно удалить все эти записи. (xdebug ТОЛЬКО в одном php.ini). Посмотрите также на Дополнительные файлы .ini, проанализированные. Мы приходим к этому позже.

zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000

enter image description here

Дополнительные файлы .ini проанализированы.
Добавьте или контролируйте, только первая строка должна быть такой же, как в "php.ini". (Без "")

enter image description here

Убедитесь, что файл действительно там!

enter image description here

Убедитесь, что session.save_path действительно существует!

enter image description here

Управляйте версией xdebug, которая должна быть равна или больше. (Соответствие PHP версии 5.3.10-1). Если все было сделано так, как описано в этом ответе, и это не сработает, то с большой вероятностью неправильный или дефектный "xdebug.so".

enter image description here

Создайте новый проект Php:

enter image description here

Свойства проекта:
Источники изображения В нашей тестовой программе важно папка проекта и исходная папка точно одинаковы!

<Т411 >

Запустить конфигурацию

enter image description here

enter image description here

Запуск отладки: - нажмите кнопку отладки

enter image description here

Браузер по умолчанию открывается и остается на стойке Подключиться.., пока Netbeans находится в режиме отладки.
(Если Netbeans не открывают браузер или не могут подключиться, вернитесь к Расширенная веб-конфигурация и выберите Не открывать веб-браузер. Закройте повторно открыть браузер и введите URL-адрес как показано ниже)

enter image description here

Пройдите через свой код. Вы увидите только что-то в браузере, когда закончите с отладкой. Не забудьте нажать кнопку Стоп enter image description here. Если вы забудете, что этот xdebug запущен.

Готово

enter image description here

Ответ 2

Попробуйте использовать xdebug.remote_connect_back=1 вместо xdebug.remote_host, чтобы избежать проблем с безопасностью

Действительно,

zend_extension=path/to/xdebug.so
xdebug.remote_enable=1
xdebug.remote_connect_back=1

Должно быть достаточно.

Убедитесь, что параметр project properties->run configuration->advanced->do not open web browser НЕ выбран (в конфигурации проекта netbeans).

Кроме того, проверьте значение URL проекта в конфигурации выполнить

Ответ 3

Проблема не в конфигурации самого xdebug, а в том, как я настроил NetBeans. Это была простая ошибка... в основном у меня был NetBeans, который перешел в каталог /var/www/Application, который я еще не установил.

Спасибо всем за помощь. Я много узнал о том, как работает xdebug!

Ответ 4

Убедитесь, что для удаленного порта установлено значение 9000 в файле xdebug.ini, my был установлен в 8000, и как только я его изменил, xdebug работал немедленно.