web-dev-qa-db-fra.com

Impossible de localiser xdebug.so sur linux

J'ai des problèmes pour faire fonctionner xdebug sur ElementaryOS (Ubuntu 16.04.2) avec php7 et Apache2.

Je l'ai installé avec Sudo apt-get install php-xdebug. L'installation n'a signalé aucune erreur. J'ai ajouté

xdebug.remote_enable=1
xdebug.remote_Host=127.0.0.1
xdebug.remote_connect_back=1 ; Not safe for production servers
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_autostart=true

à /etc/php/7.0/Apache2/php.ini.

J'ai également besoin d'ajouter l'emplacement du fichier xdebug.so comme, zend_extension="/path/to/xdebug.so". Cependant, je n'ai pas pu trouver xdebug.so après l'installation.

Quelqu'un sait-il où se trouve xdebug.so ou a-t-il changé les instructions depuis la sortie de php7.0? La plupart des instructions/aides semblent concerner php5 en ligne.

Merci.

19
user3442612

Vérifiez que xDebug est installé.

php -m

Courir locate xdebug.so

Retour /usr/lib/php/20151012/xdebug.so pour moi, mais 20151012 pourrait changer à l'avenir.

Vous devez exécuter Sudo updatedb si locate ne renvoie rien ou que vous venez d'installer localiser

23
user3442612

Pour les nouvelles versions, ajoutez simplement le nom du fichier xdebug, exemple:

zend_extension=xdebug.so

xdebug.default_enable = 1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
...

Si cela ne fonctionne pas, utilisez la commande Linux find comme celle-ci:

find / -name "xdebug.so"

Que fait cette commande?

  • Trouver = juste trouver
  • / = dans tous les répertoires à l'intérieur de/(tous)
  • -name "xdebug.so" = avec un nom égal à xdebug.so
3
Paulo Victor

Créez un fichier avec phpinfo (). Recherchez l'élément extension_dir. Vous verrez où réside le fichier xdebug.so. Le mien est:

/usr/local/lib/php/extensions/no-debug-non-zts-20170718
2
Bawm