20 ответов:
найти
php.iniи искать XDebug.установите автозапуск xdebug в false
xdebug.remote_autostart=0 xdebug.remote_enable=0отключить профайлер
xdebug.profiler_enable=0обратите внимание, что там может быть потеря производительности даже при отключенном xdebug, но загруженном. Чтобы отключить загрузку самого расширения, вам нужно прокомментировать его в своем php.Ини. Найдите запись, которая выглядит так:
zend_extension = "/path/to/php_xdebug.dll"и поставить
;чтобы прокомментировать его, например;zend_extension = ….проверить это пост XDebug, как отключить удаленную отладку для одного .файл php?
простое решение, работающее на дистрибутивах Linux, подобных Ubuntu
sudo php5dismod xdebug sudo service apache2 restart
на Linux Ubuntu(может быть, и другой - это не проверено) распределение с PHP 5 на борту, вы можете использовать:
sudo php5dismod xdebugи PHP 7
sudo phpdismod xdebugи после этого, пожалуйста, перезагрузите сервер:
sudo service apache2 restart
кроме того, вы можете добавить
xdebug_disable()в ваш код. Попробуйте:
if(function_exists('xdebug_disable')) { xdebug_disable(); }
расширение комментария в php.ini и перезапустить Apache. Вот простой скрипт (вы можете назначить ему ярлык)
отладчик xdebug-тумблер.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');
я переименовал файл config и перезапустить сервер:
$ 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это действительно сработало для меня.
на Windows (WAMP) в файле CLI ini:
X:\wamp\bin\php\php5.x.xx\php.iniстроки
; XDEBUG Extension ;zend_extension = "X:/wamp/bin/php/php5.x.xx/zend_ext/php_xdebug-xxxxxx.dll"Apache будет обрабатывать
xdebug, и композитор не будет.
два варианта:
1: добавьте следующий код в скрипт инициализации:
if (function_exists('xdebug_disable')) { xdebug_disable(); }2: Добавьте следующий флаг в php.ini
1-й вариант.xdebug.remote_autostart=0 xdebug.remote_enable=0
найдите свой PHP.ini и искать XDebug.
обычно в Ubuntu его путь
/etc/php5/apache2/php.iniвнесите следующие изменения (лучше просто прокомментировать их, добавив ; в начале )
xdebug.remote_autostart=0 xdebug.remote_enable=0 xdebug.profiler_enable=0затем перезагрузите ваш сервер опять же для Ubuntu
sudo service apache2 restart
я столкнулся с аналогичной проблемой. Иногда, вы не найдете xdebug.so в php.Ини. В этом случае выполните
phpinfo()в php-файле и проверьтеAdditional .ini files parsed. Здесь вы увидите больше ini-файлов. Одним из них будет ini-файл xdebug. Просто удалите (или переименуйте) этот файл, перезапустите apache, и это расширение будет удалено.
у меня была следующая проблема: Даже если я установил
xdebug.remote_enable=0Xdebug-сообщение об ошибке-украшение было показано.
мое решение:
xdebug.default_enable=0только если я использую этот флаг, Xdebug был отключен.
(Это для CentOS)
переименуйте конфигурационный файл и перезапустите apache.
sudo mv /etc/php.d/xdebug.ini /etc/php.d/xdebug.ini.old sudo service httpd restartсделайте обратное, чтобы снова включить.
отключить xdebug
для PHP 7:
sudo nano /etc/php/7.0/cli/conf.d/20-xdebug.iniдля PHP 5:
sudo nano /etc/php5/cli/conf.d/20-xdebug.iniзатем закомментируйте все и сохраните.
обновление -- отключить только для CLI
согласно комментарию @igoemon, это лучший метод:
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Примечание: обновите путь к вашей версии PHP.
Ubuntu 16.04 удалить xdebug из PHP.
найдите свой php.ini-файл и убедитесь, что xdebug есть:
grep -r "xdebug" /etc/php/это может придумать разные версии, если так запустить
php -vнайти свой вариант.редактировать php.файл ini, например:
sudo vi /etc/php/5.6/mods-available/xdebug.iniкомментарий строка:
//zend_extension=xdebug.soсохраните файл
Если вы используете MAMP Pro на Mac OS X, это делается через клиент MAMP, сняв флажок Активировать Xdebug под PHP tab:
Итак, да, все, что вам нужно, просто прокомментируйте строку в INI-файле, например
zend_extension=xdebug.soили аналогичные.комментарии можно сделать, добавив точку с запятой.
но, такой ответ уже добавлен, и я хотел бы поделиться готовым решением для переключения статуса Xdebug.
Я сделал быстрый переключатель для Xdebug. Может быть, было бы полезно для кого-то.
для WAMP щелкните левой кнопкой мыши на значке Wamp в панели задач. Наведите курсор на PHP, а затем нажмите на php.ini и откройте его в своем текстовом редакторе.
теперь найдите фразу 'zend_extension' и добавьте ; (точка с запятой) перед ней.
перезагрузите WAMP, и вы хорошо идти.
если вы используете
php-fpmдолжно быть достаточно следующего:sudo phpdismod xdebug sudo service php-fpm restartобратите внимание, что вам нужно изменить в зависимости от вашей версии PHP. Например, запустив php 7.0 вы бы сделали:
sudo phpdismod xdebug sudo service php7.0-fpm restartпоскольку вы используете php-fpm, не должно быть необходимости перезапускать фактический веб-сервер. В любом случае, если вы не используете fpm, вы можете просто перезапустить свой веб-сервер, используя любую из следующих команд:
sudo service apache2 restart sudo apache2ctl restart
Apache / 2.4.33 (Win64) PHP/7.2.4 myhomebrew stack
В конце php.Ини я использую следующие действия, чтобы управлять отладчик xdebug для работы с 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

Comments