web-dev-qa-db-fra.com

Serveur XDebug et RESTful utilisant PHPStorm ou POSTman

Comment obtenir un client REST (tel que celui intégré dans PHPStorm ou POSTman ) pour qu'il fonctionne avec XDebug?

Dans ma configuration actuelle de XDebug, j'utilisais PHPStorm et Bookmarklet fourni je peux le faire fonctionner à la fois sous Chrome et Firefox - mais dès que j'essaie avec POSTman ou tout autre client REST Je n'arrive pas à comprendre comment commencer.

À votre santé.

66
Daniel Hollands

Jusqu'à ce que http://youtrack.jetbrains.com/issue/WI-17031 soit implémenté, vous pouvez essayer l'une de ces approches:

  1. Configurez votre xdebug (en éditant php.ini) pour tenter de déboguer le script every php (xdebug.remote_autostart = 1)

  2. Ajoutez le paramètre de démarrage de la session xdebug à l’URL réelle (XDEBUG_SESSION_START={{KEY}} - http://xdebug.org/docs/remote ), par exemple: ?XDEBUG_SESSION_START=PHPSTORM 

  3. Transmettre le cookie xdebug en tant qu’un des en-têtes (celui qui est défini par bookmarklet ou l’extension du navigateur, par exemple)

Pour que cela fonctionne, assurez-vous que l’icône "Gestion du téléphone" est activée (Run | Start Listen for PHP Debug Connection) à l’avance.

159
LazyOne

Cela me rendait fou. Je viens de mettre à jour vers PHP 7.1 et xdebug qui fonctionnait ne fonctionnait plus. J'ai mis à jour le fichier xdebug.so (Linux) et php --version a indiqué que xdebug était effectivement chargé et fonctionnait. Mais quand j’utilisais Postman, le débogueur n’avait jamais démarré.

Voici la solution. Si vous utilisez Apache comme serveur, vous devez activer les mods PHP 7.1 et redémarrer Apache: Sudo service Apache2 restart

2
RyanNerd
xdebug.remote_timeout = 60000

Travaillé pour moi Comme mon Mac était très lent, le débogueur distant a expiré après 200 ms (valeur par défaut)

0
Nikunj Acharya