Comment désactiver XDebug

je pense que mon serveur est devenu lent depuis que J'ai installé XDebug. Donc, pour tester mon hypothèse, je veux désactiver complètement XDebug. J'ai cherché des tutoriels sur la façon de le faire, mais je ne trouve pas ces informations.

97
demandé sur Gordon 2012-01-06 11:41:09

20 réponses

Trouvez votre php.ini et cherchez XDebug.

mettre Xdebug autostart à false

xdebug.remote_autostart=0  
xdebug.remote_enable=0

désactiver votre profiler

xdebug.profiler_enable=0

notez qu'il peut y avoir une perte de performance même avec xdebug désactivé mais chargé . Pour désactiver le chargement de l'extension elle-même, vous devez le commenter dans votre php.ini. Trouvez une entrée ressemblant à ceci:

zend_extension = "/path/to/php_xdebug.dll"

et mettre un ; pour le commenter, p.ex. ;zend_extension = … .

consultez ce post XDebug, comment faire pour désactiver le débogage à distance d'unique .fichier php?

128
répondu Uday Sawant 2017-05-23 12:18:21

une solution facile de travailler sur des distributions Linux similaires à Ubuntu

sudo php5dismod xdebug
sudo service apache2 restart
88
répondu Arvi Võime 2018-05-17 12:54:13

dans Linux Ubuntu ( peut - être aussi un autre-il n'est pas testé ) distribution avec PHP 5 à bord, vous pouvez utiliser:

sudo php5dismod xdebug

et avec PHP 7

sudo phpdismod xdebug

et après cela, redémarrez le serveur:

sudo service apache2 restart
26
répondu kkochanski 2016-08-16 12:23:18

vous pouvez aussi ajouter xdebug_disable() à votre code. Essayez:

if(function_exists('xdebug_disable')) { xdebug_disable(); }

23
répondu Zack Katz 2013-01-08 18:20:20

Commentaire de l'extension dans php.ini et redémarrez Apache. Voici un script simple (vous pouvez lui assigner un raccourci)

xdebug-bascule.php

define('PATH_TO_PHP_INI', 'c:/xampp/php/php.ini');
define('PATH_TO_HTTPD', 'c:/xampp/apache/bin/httpd.exe');
define('REXP_EXTENSION', '(zend_extension\s*=.*?php_xdebug)');

$s = file_get_contents(PATH_TO_PHP_INI);
$replaced = preg_replace('/;' . REXP_EXTENSION . '/', '', $s);
$isOn = $replaced != $s;
if (!$isOn) {
    $replaced = preg_replace('/' . REXP_EXTENSION . '/', ';', $s);
}
echo 'xdebug is ' . ($isOn ? 'ON' : 'OFF') . " now. Restarting apache...\n\n";
file_put_contents(PATH_TO_PHP_INI, $replaced);

passthru(PATH_TO_HTTPD . ' -k restart');
10
répondu antonpinchuk 2013-06-13 13:56:28

j'ai renommé le fichier de configuration et redémarré le serveur:

$ mv /etc/php/7.0/fpm/conf.d/20-xdebug.ini /etc/php/7.0/fpm/conf.d/20-xdebug.i

$ sudo service php7.0-fpm restart && sudo service nginx restart

ça a marché pour moi.

10
répondu Sinan Eldem 2016-03-04 09:43:28

sous Windows (WAMP) dans le fichier CLI ini:

X:\wamp\bin\php\php5.x.xx\php.ini

ligne de commentaire

; XDEBUG Extension

;zend_extension = "X:/wamp/bin/php/php5.x.xx/zend_ext/php_xdebug-xxxxxx.dll"

Apache traitera xdebug , et le compositeur ne le fera pas.

7
répondu Vladimir Vukanac 2015-06-08 18:46:37

dans xubuntu j'ai totalement désactivé xdebug pour le CLI avec ceci...

sudo rm /etc/php5/cli/conf.d/*xdebug*
6
répondu Artistan 2014-05-08 13:10:41

deux options:

1: ajouter le code suivant dans le Script d'initialisation:

 if (function_exists('xdebug_disable')) {
           xdebug_disable();
         }

2: Ajouter le drapeau suivant à php.ini

 xdebug.remote_autostart=0
 xdebug.remote_enable=0
La 1ère option

est recommandée.

4
répondu Sumoanand 2014-02-06 19:16:52

Trouvez votre PHP.ini et de regarder pour XDebug.

normalement dans Ubuntu son chemin est

/etc/php5/apache2/php.ini  

faire les changements suivants (mieux vaut les commenter en ajoutant ; au début )

xdebug.remote_autostart=0
xdebug.remote_enable=0
xdebug.profiler_enable=0

puis redémarrez votre serveur encore une fois pour Ubuntu

sudo service apache2 restart
4
répondu Shadab Salam 2016-05-26 12:35:13

j'ai rencontré un problème similaire. Parfois, vous ne trouverez pas xdebug.donc en php.ini. Dans ce cas, exécutez phpinfo() dans un fichier php et vérifiez Additional .ini files parsed . Ici, vous verrez plus de fichiers ini. L'un d'eux sera le fichier ini de xdebug. Juste supprimer (ou renommer) ce fichier, redémarrez apache, et cette extension sera supprimé.

3
répondu jerrymouse 2014-10-12 00:20:34

j'ai eu le problème suivant: Même si je mets

xdebug.remote_enable=0 

Xdebug-Error-Message-la Décoration a été montré.

ma solution:

xdebug.default_enable=0

seulement si j'utilise ce drapeau, Xdebug est désactivé.

3
répondu suther 2015-05-12 11:38:01

(pour CentOS)

Renommer le fichier de configuration et redémarrer apache.

sudo mv /etc/php.d/xdebug.ini /etc/php.d/xdebug.ini.old
sudo service httpd restart

Faire l'inverse pour réactiver.

3
répondu crmpicco 2016-03-07 11:04:37

Désactiver l'extension xdebug

pour PHP 7: sudo nano /etc/php/7.0/cli/conf.d/20-xdebug.ini

pour PHP 5: sudo nano /etc/php5/cli/conf.d/20-xdebug.ini

puis tout commenter et sauver.


mise à JOUR -- Disable pour CLI uniquement

selon le commentaire de @igoemon, c'est une meilleure méthode:

PHP 7.0 (NGINX)

sudo mv /etc/php/7.0/cli/conf.d/20-xdebug.ini /etc/php/7.0/cli/conf.d/20-xdebug.ini.old
sudo service nginx restart

Note: mettez à jour le chemin vers votre version de PHP.

3
répondu Justin 2016-10-17 16:52:55

Ubuntu 16.04 supprimer xdebug de PHP.

Trouvez votre php.fichier ini et assurez-vous que xdebug est là:

grep -r "xdebug" /etc/php/

cela pourrait venir avec différentes versions, si oui, Lancez php -v pour trouver votre version.

édite le php.fichier ini, comme:

sudo vi /etc/php/5.6/mods-available/xdebug.ini

Commentaire de la ligne:

//zend_extension=xdebug.so

Enregistrer le fichier

2
répondu Andrew Atkinson 2017-10-25 14:23:02

si vous utilisez MAMP Pro sur Mac OS X c'est fait via le client MAMP en décochant activer Xdebug sous le PHP onglet:

Disabling Xdebug in MAMP Pro

1
répondu Casper André Casse 2015-07-17 08:53:47

donc, oui, tout ce dont vous avez besoin, il suffit de commenter la ligne dans le fichier INI comme zend_extension=xdebug.so ou similaire.

des commentaires peuvent être faits en ajoutant un point-virgule.

mais, ce genre de réponse déjà ajouté, et je voudrais partager solution prête à changer le statut Xdebug.

j'ai fait un commutateur rapide pour Xdebug. Il serait peut-être utile pour quelqu'un.

Xdebug Switcher

1
répondu Kirby 2017-01-12 17:25:10

pour WAMP, cliquez sur le clic gauche sur l'icône Wamp dans la barre des tâches. Passez sur PHP et cliquez sur php.ini et l'ouvrir dans votre texteditor.

maintenant, rechercher la phrase "zend_extension" et ajouter; (point-virgule) devant.

redémarrez le WAMP et vous pouvez y aller.

1
répondu bantya 2017-04-09 12:41:59

si vous utilisez php-fpm , les mentions suivantes doivent suffire:

sudo phpdismod xdebug
sudo service php-fpm restart

remarquez, que vous aurez besoin de modifier cela en fonction de votre version php. Par exemple, exécuter php 7.0 vous ferait:

sudo phpdismod xdebug
sudo service php7.0-fpm restart

puisque vous utilisez php-fpm, il ne devrait pas être nécessaire de redémarrer le serveur web. Dans tous les cas, si vous n'utilisez pas fpm, vous pouvez simplement redémarrer votre serveur web en utilisant l'une des commandes suivantes:

sudo service apache2 restart
sudo apache2ctl restart
1
répondu Cyclonecode 2018-03-09 13:14:56

Apache / 2.4.33 (Win64) PHP / 7.2.4 myhomebrew stack

à la fin de php.j'utilise ce qui suit pour gérer Xdebug pour une utilisation avec PhpStorm

; jch ~ Sweet analizer at https://xdebug.org/wizard.php for matching xdebug to php version.
; jch ~ When upgrading php versions check if newer xdebug.dll is needed in ext directory.
; jch Renamed... zend_extension = E:\x64Stack\PHP\php7.2.4\ext\php_xdebug-2.6.0-7.2-vc15-x86_64.dll

zend_extension = E:\x64Stack\PHP\php7.2.4\ext\php_xdebug.dll

; jch !!!! Added the following for Xdebug with PhpStorm

[Xdebug]
; zend_extension=<full_path_to_xdebug_extension>
; xdebug.remote_host=<the host where PhpStorm is running (e.g. localhost)>
; xdebug.remote_port=<the port to which Xdebug tries to connect on the host where PhpStorm is running (default 9000)>

xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000

xdebug.profiler_enable=1
xdebug.profiler_output_dir="E:\x64Stack\Xdebug_profiler_output"
xdebug.idekey=PHPSTORM
xdebug.remote_autostart=1

; jch ~~~~~~~~~To turn Xdebug off(disable) uncomment the following 3 lines restart Apache~~~~~~~~~ 
;xdebug.remote_autostart=0  
;xdebug.remote_enable=0
;xdebug.profiler_enable=0

; !!! Might get a little more speed by also commenting out this line above... 
;;; zend_extension = E:\x64Stack\PHP\php7.2.4\ext\php_xdebug.dll
; so that Xdebug is both disabled AND not loaded
1
répondu Jim 2018-06-08 02:26:08