xdebug는 PHP 용 디버거(debugger) 및 프로파일러(profiler) 이다. Windows 와 RHEL/CentOS 에 설치하는 방법을 정리해 본다.

Windows/Linux 에 설치

설치를 위해서는 xdebug 다운로드 사이트에서 사용하는 PHP 에 맞는 버전을 다운로드해야 하는데 Visual Studio 버전, Thread Safety 여부, 사용하는 PHP의 비트에 맞는 버전을 아는게 어려울 수 있다.

이때문에 xdebug 에서는 맞는 버전을 알려주는 서비스를 제공하고 있다.

  1. cmd.exe 를 열고 다음 명령을 실행한다.

    php -i > phpinfo.txt
    CODE
  2. phpinfo.txt 를 에디터로 열어서 내용을 복사해 놓는다.
  3. 브라우저로 http://www.xdebug.org/wizard.php 를 연결한다.
  4. 2번에서 복사한 내용을 붙여넣고 Analyse my phpinfo() output 를 클릭한다.
  5. 다음 화면처럼 사용하는 php 에 맞는 버전 및 설치 과정을 안내해주니 그대로 진행하면 된다

  6. 안내대로 php.ini 에 zend_extension 을 추가한다.

    zend_extension=ext/php_xdebug-2.5.4-7.1-vc14-x86_64.dll
    CODE


  7. php.ini 에 xdebug 설정을 추가한다.

    [xdebug]
    xdebug.remote_autostart=1
    xdebug.remote_connect_back=1
    xdebug.remote_enable=1
    xdebug.remote_port=9009
    xdebug.remote_handler=dbgp
    CODE

    remote_port 의 기본 값은 9000 이지만 php-fpm 기본 포트와 충돌하므로 다른 값으로 변경한다.


  8. 정상 동작 여부 확인을 위해 PHP 내장 웹서버를 띄운다.

    php -S localhost:8080
    CODE

     

  9. phpinfo() 를 호출하는 php 페이지를 하나 만들고 phpinfo.php 로 저장한다.

    <?php
    phpinfo();
    ?>
    CODE

     

  10. 브라우저로 localhost:8080/phpinfo.php 를 호출하여 xdebug 관련 설정이 보이는 지 확인한다.
     


OS X

  1. 다음 구문으로 설치. php-version 은 php71 처럼 major, minor 형식으로 기술

     brew install homebrew/php/<php-version>-xdebug
    CODE
  2. php 7.1 의 경우

    brew install homebrew/php/php71-xdebug
    CODE


PHPStorm xdebug 설정

  1. Edit → Settings 진입
  2. Languag and Frameworks → Interpreter 를 누르고 xdebug 가 설정된 PHP 실행 파일을 등록해 준다.

  3. PHP → Debug → xdebug 설정중 port 번호가 xdebug.remote_port에 설정한 것과 맞는지 확인한다.

  4. 상단의 Start Listening for PHP Debug connections 를 클릭한다.

  5. break point 를 등록하고 제대로 디버깅이 되는지 확인한다.

Ref