[php] XDebug를 비활성화하는 방법

XDebug를 설치 한 이후 서버가 느려진 것 같습니다. 따라서 내 가설을 테스트하기 위해 XDebug를 완전히 비활성화하고 싶습니다. 이 작업을 수행하는 방법에 대한 자습서를 검색했지만 해당 정보를 찾을 수 없습니다.



답변

php.iniXDebug를 찾아보세요 .

xdebug 자동 시작을 false로 설정

xdebug.remote_autostart=0
xdebug.remote_enable=0

프로파일 러 비활성화

xdebug.profiler_enable=0

xdebug가 비활성화되었지만로드 된 경우에도 성능 손실 이 발생할 수 있습니다 . 확장 프로그램 자체의로드를 비활성화하려면 php.ini에 주석을 추가해야합니다. 다음과 같은 항목을 찾으십시오.

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

;주석을 달기 위해 를 넣으 십시오 ;zend_extension = ….

이 게시물 XDebug, 단일 .php 파일에 대한 원격 디버깅을 비활성화하는 방법을 확인하십시오 .


답변

Ubuntu와 유사한 Linux 배포판에서 작동하는 쉬운 솔루션

sudo php5dismod xdebug
sudo service apache2 restart


답변

에서 리눅스 우분투 ( – 어쩌면 또 다른이 테스트 아니에요 과) 유통 PHP 5 보드에, 당신은 사용할 수 있습니다 :

sudo php5dismod xdebug

그리고 PHP 7

sudo phpdismod xdebug

그 후 서버를 다시 시작하십시오.

sudo service apache2 restart


답변

또한 xdebug_disable()코드에 추가 할 수 있습니다 . 시험:


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


답변

구성 파일의 이름을 바꾸고 서버를 다시 시작했습니다.

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

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

그것은 나를 위해 일했습니다.


답변

php.ini에서 확장자를 주석으로 처리하고 Apache를 다시 시작하십시오. 다음은 간단한 스크립트입니다 (바로 가기를 지정할 수 있음).

xdebug-toggle.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 . '/', '$1', $s);
$isOn = $replaced != $s;
if (!$isOn) {
    $replaced = preg_replace('/' . REXP_EXTENSION . '/', ';$1', $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');


답변

xubuntu에서 나는 이것으로 CLI에 대한 xdebug를 완전히 비활성화했습니다 …

sudo rm /etc/php5/cli/conf.d/*xdebug*