52 votes

la session eclipse xdebug ne se termine jamais

J'essaie de faire fonctionner xdebug avec eclipse (3.5) / php (sur xampp Windows 7). J'ai vérifié que xdebug est activé dans php - j'ai la sortie fantaisie et mon phpinfo montre tous les trucs xdebug. J'ai activé le débogage à distance, et j'ai tapé l'adresse IP du réseau sur ma machine Eclipse.

Lorsque je demande à eclipse de déboguer, il lance le navigateur et passe les paramètres de l'URL de débogage. Cela semble correct.

Cependant, dans la perspective de débogage d'Eclipse, il y a 57% de "lancement de mon projet" et 57% d'"attente de session xdebug". Il reste là sans bouger.

J'ai désactivé le pare-feu de Windows sur les deux machines.

J'ai essayé d'activer la chasse d'eau implicite.

Des idées ?

62voto

Goran Points 944

J'avais aussi ce problème... Il me manquait cette ligne :

xdebug.remote_enable = On

dans le fichier php.ini.

14voto

uicoded Points 199

Assurez-vous que vous avez défini zend_extention avec ABSOLUTE dans le php.ini :

Par exemple : zend_extension= D:\SANDBOX\server\php\php_xdebug -2.1.0-5.3-vc6.dll

Je débogue un projet local sous Windows. Jusqu'à présent je n'ai pas eu besoin de xdebug.remote_enable = On

Suggestions si la session XDebug ne démarre pas (se bloque à 57%), assurez-vous que :

  • la directive zend_extention est définie avec un chemin absolu et le débogage est chargé, utilisez phpinfo()
  • Le pare-feu ne bloque pas le port 9000 par défaut ou Eclipse.
  • une autre application n'utilise pas le port (exécutez : netstat -an |find /i "listening" à partir de la ligne de commande)

Si vous avez besoin de configurer un port différent, utilisez le php.ini : xdebug.remote_enable = on xdebug.remote_port = XXXX

et corriger les paramètres XDEBUG dans Eclipse :

XDEBUG settings in Eclipse

9voto

marco Points 51

J'ai eu le même problème et je l'ai résolu en changeant le port pour XDebug (utilisant maintenant le port 9001).

Voici le contenu de mon php.ini :

zend_extension ="C:\...\EasyPHP-5.3.3\php\ext\php_xdebug-2.dll"
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9001
xdebug.remote_handler=dbgp
xdebug.profiler_enable=0
xdebug.remote_mode=req
xdebug.remote_autostart=0

Vérifiez également le fichier journal d'Apache et assurez-vous que vous n'avez pas le message d'avertissement suivant :

Avertissement PHP : Xdebug MUST be loaded as a Zend extension in Inconnu sur la ligne 0
Avertissement : Xdebug DOIT être chargé en tant qu'extension Zend dans l'application Inconnu en ligne 0

Si c'est le cas, ouvrez le fichier php.ini et commentez avec un ';' le code de l'utilisateur. extension=php_xdebug-2.dll ligne :

;extension=php_xmlrpc.dll
extension=php_xsl.dll
**;extension=php_xdebug-2.dll**
;/PHPExt

6voto

cloudwhale Points 224

Après m'être battu pendant 3 heures et avoir essayé toutes les solutions sur les forums, j'ai découvert que l'astuce simple consistait à supprimer les guillemets tout en spécifiant l'adresse IP. chemin de la dll Xdebug sur zend_extension sur php.ini . J'utilise XAMPP (PHP 5.3.6 + Apache 2.2)+ Eclipse Indigo + PDT + Xdebug 2.1.2 sur Windows Vista.

Voici la configuration exacte qui a fonctionné pour moi -

zend_extension=C:\xampp\php\ext\php_xdebug-2.1.2-5.3-vc6.dll
#Note that the path above is not in quotes
xdebug.remote_enable=true
xdebug.remote_host=localhost
xdebug.remote_port=9001
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir=C:\xampp\tmp

J'ai utilisé le port 9001 pour qu'il n'y ait pas de conflit avec le port 9000 au cas où celui-ci serait déjà utilisé par un autre programme. Assurez-vous que cela correspond au port dans Eclipse > Préférences > PHP > Debug > Xdebug aussi. Aussi, redémarrez apache après avoir modifié le php.ini.

Une fois que j'ai ajouté ceci au php.ini, tout a fonctionné comme une crème glacée.

6voto

R2D2 Points 1080

J'ai eu le même problème avec Zend Studio. J'ai remarqué que la session xdebug ne démarrait pas correctement. J'ai passé cette chaîne à l'url une fois et cela a fonctionné depuis.

http://localhost/myalias/?XDEBUG_SESSION_START=ECLIPSE_DBGP&KEY=13750956767461

Je suis sûr que c'est une question de configuration quelque part dans l'IDE.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X