2013-03-11 3 views
20

Я не могу заставить XDebug работать с PhpStorm и Vagrant на компьютере с Windows 7. Я уже следил за каждым учебным пособием, чтобы заставить его работать, но не повезло.Не удается отладить с PhpStorm + Vagrant + XDebug

Так что я попытался это:

  • PhpStorm всегда слушает отлаживать МАГИСТРАЛИ
  • xdebug.ini файл со следующим:

zend_extension = "..../xdebug.so" 
xdebug.remote_enable= 1 
xdebug.remote_handler=dbgp 
xdebug.remote_host= 33.33.33.10 
xdebug.remote_port= 9000 
xdebug.remote_connect_back= 1 
xdebug.remote_autostart= 1 
xdebug.remote_log = "...." 
  • Настройка PhpStorm для подключения к localhost:8080 и тоже 33.33.33.10, оба не повезло.
  • Файл журнала всегда выводит:

I: Checking remote connect back address. 
W: Remote address not found, connecting to configured address/port: 33.33.33.10:9000. :-| 
E: Could not connect to client. :-(
  • Брандмауэр (ESET Smart Security) всегда выключенным, когда я пытаюсь отлаживать
  • отображения Установить путь, Ждут» т работаю

Я просто не знаю, что делать, но мне действительно нужно иметь возможность d ebug.
Спасибо за помощь!

+2

Какая машина принадлежит 33.33.33.10 - ваш настоящий (где PhpStorm tuns) или виртуальный (Vagrant)? Он должен быть IP-машиной с PhpStorm (как видно из виртуальной машины) - проверьте, что имеет '$ _SERVER ['REMOTE_ADDR']'. Хорошая статья: http: //confluence.jetbrains.com/display/PhpStorm/Zero-configuration + Web + Application + Отладка + с + Xdebug + и + PhpStorm – LazyOne

+0

33.33.33.10 принадлежит Vagrant, но в Windows все говорят, что это должна быть VM, а не машина с PhpStorm –

+0

должен быть IP-адресом компьютера, на котором работает отладочный клиент (PhpStorm в нашем случае) - проверьте, что в руководстве xdebug говорится о xdebug.remote_host. ** UNLESS ** вы используете SSH-тюнинг и/или xdebug-прокси (что немного странно (в основном прокси), поскольку оно находится на одном компьютере, а не где-то в Интернете за брандмауэрами и маршрутизаторами) - в этом случае слушайте, что «все говорит: «И спросите их, как это настроить - я не работал с этим. – LazyOne

ответ

38

Проблема была очень глупой - я переправил порт 9000 в Vagrantfile, и я не сделал этого, т должны сделать так ...

Теперь, на самом деле я вижу, что только необходимые строки в xdebug.ini являются:

zend_extension = ... 
xdebug.remote_enable = on 
xdebug.remote_connect_back = on 

установка очень проста, если не делать глупостей. ..

+13

Для тех, кто задавался вопросом, почему он начал работать в Nadav, когда остановил пересылку порта 9000, это потому, что Xdebug фактически работает наоборот. Вместо того, чтобы ваш компьютер подключался к вашей коробке Vagrant на порте 9000, Xdebug фактически работает в обратном порядке, ваш блок Vagrant будет подключаться к вашему Xdebug-клиенту на вашем (хостском) компьютере. Джеймс Уокер хорошо объясняет это [здесь] (http://walkah.net/blog/debugging-php-with-vagrant/). – Jonathan

+2

Даже remote_handler не требуется - по умолчанию установлен dbgp. – Yurik

+1

«debug.remote_connect_back = on» - это именно то, что мне нужно: хост Mac OS X, работающий с брандмауэром с Ubuntu 14.04 on. – Jimbo

0

Убедитесь, что вы подключаетесь к правильному URL из PHPStorm. Например, у моего бродячего бокса есть ip 192.168.50.2, поэтому мне нужно установить URL-адрес моего проекта => 192.168.50.2

+0

Спасибо 30equals, мне удалось решить проблему сейчас. Единственная проблема заключалась в том, что я переправил порт 9000 в Vagrantfile, который мне не нужно ... Что касается вашего ответа - я уже пробовал это, но спасибо вам в любом случае! –

0

Мне пришлось установить

xdebug.remote_connect_back = '0' 
xdebug.remote_host= '10.0.2.2' 

так вся моя конфигурация выглядит следующим образом:

xdebug.default_enable: '1' 
xdebug.remote_autostart: '1' 
xdebug.remote_connect_back: '0' 
xdebug.remote_enable: '1' 
xdebug.remote_handler: dbgp 
xdebug.remote_host: '10.0.2.2' 
xdebug.max_nesting_level: '400' 

Ведущий: Linux

VM: Vagrant с PuPHPet не используя VirtualBox

ничего особенного, чтобы настроить в PhpStorm

найдено его здесь: http://jeromejaglale.com/doc/php/xdebug_vagrant_puphpet_phpstorm