2013-04-26 2 views
10

PhpStorm не может видеть xdebug, но он установлен. В моем браузере xdebug работает отлично. В чем проблема?Phpstorm не видит xdebug, но он установлен

Ошибка:

Connection with 'xdebug' was not established. Validate installation.

php.ini

[xdebug] 
xdebug.idekey=PHPSTORM 
zend_extension="/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so" 
xdebug.default_enable=1 
xdebug.coverage_enable=1 
xdebug.profiler_enable = 1 
xdebug.profiler_output_dir = "/tmp" 
xdebug.remote_enable=1 
xdebug.remote_handler=dbgp 
xdebug.remote_host=127.0.0.1 
xdebug.remote_port=9000 
xdebug.remote_autostart=1 

phpinfo в PhpStorm:

версия PHP: 5.4.10

Loaded extensions: bcmath, bz2, calendar, Core, ctype, curl, date, dom, ereg, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imap, json, ldap, libxml, mbstring, mcrypt, mysql, mysqli, openssl, pcre, PDO, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, Reflection, session, SimpleXML, soap, sockets, SPL, sqlite3, standard, tokenizer, XCache, xml, xmlreader, xmlwriter, xsl, yaz, zip, zlib 
+1

Могут быть разные файлы 'php.ini', один для веб-сервера, другой для интерпретатора CLI PHP. Убедитесь, что xdebug включен во всех файлах php.ini для версий PHP, которые вы используете. – CrazyCoder

+0

Я уверен на 100%! – RDK

+0

Можете ли вы показать нам свою конфигурацию запуска/отладки веб-приложений PHP в PHPStorm, включая конфигурацию сервера? – Getz

ответ

9

Во-первых, вы используете MAMP (бесплатно) или MAMP Pro?

Оказывается, существует разница между файлом php.ini, который вы редактируете из MAMP, и файлом php.ini, который PhpStorm использует в интерпретаторе.

Файл Mpp Pro php.ini находится в /Library/Application Support/appsolute/MAMP PRO/conf/php.ini и не имеет установки PHP (которой требуется PhpStorm при настройке интерпретатора). Если вы запустите phpinfo(); это файл, из которого вы увидите данные.

Когда вы устанавливаете PhpStorm в нужное место здесь /Applications/MAMP/bin/php/php5.4.x/bin, он смотрит там файл php.ini, а не тот, который использует MAMP Pro (см. Выше). Поэтому, если вы хотите, чтобы PhpStorm увидел отладчик, вам нужно добавить код в этот файл php.ini.

PhpStorm Interpreter Settings

Для помощи настройки переводчика для MAMP и PhpStorm относятся к documentation here

ПОЛЕЗНЫЕ СОВЕТ: При проверке, чтобы увидеть, если Xdebug установлен убедитесь, что для запуска команды --version в терминале от расположение MAP-php. В противном случае вы увидите информацию по умолчанию для OSX PHP, которая по умолчанию не будет установлена ​​xdebug.

Пример: запустить это в PhpStorm терминале, чтобы увидеть, если он работает /Applications/Mamp/bin/php/php5.4.4/bin/php --version

7

MAMP с использованием различных PHP .ini, если запустить его из терминала, попробуйте этот код, чтобы найти php.ini

php -i | grep php.ini 

После этого добавьте код активировать Xdebug

[xdebug] 
zend_extension="/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so" 
xdebug.remote_enable=true 
xdebug.remote_port=9000 
xdebug.profiler_enable=1 
xdebug.remote_host=localhost 
xdebug.profiler_output_dir="/Applications/MAMP/tmp/xdebug" 
xdebug.max_nesting_level=1000 

Если эта работа, пожалуйста, рассмотрите принять ответ в интересах других.

+0

, это не работает)) – RDK

+0

@imRcH на PHPStorm, проверьте свой PHPInterpreter, вы выбрали правильную версию PHP? Попробуйте запустить команду, которую я дал в команде консоли PHPStorm. – GusDeCooL

1

Это связано с тем, что по умолчанию Mac OS X имеет php. Для MAMP PRO есть два ini-файла.

PhpStorm будет запускать PHP по умолчанию, который вы не добавляете к нему функцией xdebug.

Прочитайте этот пост для решения

http://devnet.jetbrains.com/message/5466653

Обратите внимание на STEP 5

===================== ==============

хорошо, если это не сработает, я думал, что вы не можете уделять достаточное внимание этой статье, она помогает и объясняет причину, читайте снова?

+2

Нам не очень нравятся ссылки только здесь, скопируйте соответствующую константу из ссылки в свой ответ. –

+0

не работает)) – RDK

+0

= =! любые подсказки об ошибке? –

0

У меня была аналогичная проблема.

я сделал:

  1. Installed XDebug, следуя инструкциям here.
  2. Обнаружили, какая версия PHP использует мой PHPStorm.
  3. Создал новую запись в соответствующем файле php.ini /path/to/xdebug/modules/xdebug.so.

и я смог решить свою проблему. xdebug сейчас работает.

0

У меня была аналогичная проблема в том, что она сработала, тогда это не так.

В моем случае причиной оказалось пропущенное сообщение .htaccess файл в корне проекта.

Файл .htaccess (повторенный ниже) был из предыдущего набора тестов и был предназначен для прекращения работы XDebug. Конечно.

php_value xdebug.remote_autostart 0 
php_value xdebug.remote_enable 0 
php_value xdebug.profiler_enable 0 

Я просто переименовал файл и, как магия, все было хорошо.

Смежные вопросы