2013-04-26 20 views
10

PhpStorm non può vedere xdebug ma è installato. Nel mio browser xdebug funziona bene. Dov'è il problema?Phpstorm non vede xdebug ma è installato

L'errore:

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 in PhpStorm:

versione di 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

Ci potrebbero essere diversi file 'php.ini', uno per il web server, un altro per l'interprete PHP CLI. Assicurati che xdebug sia abilitato in tutti i file 'php.ini' per le versioni PHP che stai usando. – CrazyCoder

+0

Sono sicuro al 100%! – RDK

+0

Puoi mostrarci la configurazione Esegui/Debug dell'applicazione Web PHP in PHPStorm, inclusa la configurazione del server? – Getz

risposta

9

In primo luogo, si utilizza MAMP (gratuito) o MAMP Pro?

Risulta che c'è una differenza tra il file php.ini che si modifica da MAMP e il file php.ini che PhpStorm utilizza nell'interprete.

Il file php.ini MAMP Pro risiede in /Library/Application Support/appsolute/MAMP PRO/conf/php.ini e non ha un'installazione PHP (di cui PhpStorm ha bisogno quando si imposta l'interprete). Se esegui phpinfo(); questo è il file dal quale vedrai i dati.

Quando si imposta PhpStorm nella posizione necessaria qui /Applications/MAMP/bin/php/php5.4.x/bin, viene visualizzato il file php.ini lì, non quello utilizzato da MAMP Pro (sopra). Quindi se vuoi che PhpStorm visualizzi il debugger, devi aggiungere il codice a quel file php.ini.

PhpStorm Interpreter Settings

Per informazioni configurare l'interprete per MAMP e PhpStorm si riferiscono alla documentation here

Suggerimento utile: Durante il controllo per vedere se xdebug è installato assicurarsi di eseguire il comando --version nel terminale da la posizione php di MAMP. Altrimenti finirai per vedere le informazioni PHP OSX predefinite che non avrebbero installato xdebug per impostazione predefinita.

Esempio: eseguire questo nel terminale PhpStorm per vedere se funziona /Applications/Mamp/bin/php/php5.4.4/bin/php --version

7

MAMP usando php diverso .ini se lo si esegue dal terminal, provate questo codice per trovare il file php.ini

php -i | grep php.ini 

Dopo di che aggiungere il codice per attivare il 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 

Se questo lavoro, perche non accettare la risposta a beneficio degli altri.

+0

non funziona)) – RDK

+0

@imRcH su PHPStorm, controlla il tuo PHPInterpreter, hai selezionato la versione corretta di PHP? Prova ad eseguire il comando che ho dato nel comando della console PHPStorm. – GusDeCooL

1

Questo perché Mac OS X ha installato php per impostazione predefinita. Ci sono due file ini per MAMP PRO.

PhpStorm esegue il php predefinito a cui non si aggiunge la funzione xdebug.

Leggi questo post per la soluzione

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

Prestare attenzione alla STEP 5

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

va bene, se non funziona, ho pensato u potrebbe non prestare sufficiente attenzione l'articolo, è fare utili e spieghi il motivo, leggere ho di nuovo?

+2

Non ci piacciono molto le risposte al solo link qui, per favore copia la costante rilevante dal link nella tua risposta. –

+0

non funziona)) – RDK

+0

= =! qualche consiglio sull'errore? –

0

Ho avuto problemi simili.

ho fatto:

  1. xdebug installato seguendo i passi here.
  2. Ho scoperto quale versione di PHP utilizza il mio PHPStorm.
  3. Creata una nuova voce nel file php.ini corrispondente di /path/to/xdebug/modules/xdebug.so.

e sono stato in grado di risolvere il mio problema. xdebug funziona ora.

0

Ho avuto un problema simile in quanto ha funzionato, ma non è così.

Nel mio caso, la causa si è rivelata essere un file errato .htaccess nella radice del progetto.

Il file .htaccess (ripetuto di seguito) era lì da una precedente serie di test e aveva lo scopo di impedire il funzionamento di XDebug. Lo ha fatto sicuramente.

Ho appena rinominato il file e, come per magia, tutto andava bene.

Problemi correlati