Xdebug – utilização no Linux (Debian like)

Xdebug-logo

Este post visa auxiliar a configuração do Xdebug no Linux para debugar em PHP utilizando o Netbeans.

Itens necessários

  • PHP >5.3
  • Apache
  • Linux (Debian ou derivado – não foi testado em outro, então podem haver diferenças)
  • Xdebug previamente instalado
  • Netbeans >7.2
  • Shell com acesso a root

 

Xdebug configurações

Para carater de facilitar, trabalharemos diretamente dentro da pasta /etc/php5/mods-available.

Abra o shell e logue-se como root, em seguida abra através do VIM o arquivo /etc/php5/mods-available/x debug.ini e adicione as seguintes linhas

zend_extension=/usr/lib/php5/path_correto_de_seu_xdebug/xdebug.so 
x debug.remote_enable=1
x debug.remote_handler=dbgp
x debug.remote_mode=req
x debug.remote_host=127.0.0.1
x debug.remote_port=9000

# Todos os sem o espaço entre o x e debug. 
# Deixei assim pra não prejudicar a palavra chave do post...

 

editando-arquivo-xdebug.ini

Após salvar este arquivo um link simbólico do mesmo deve ser criado em /etc/php5/conf.d com o nome 20-xdebug.ini

criando-link-simbolico

Agora basta apenas restar o apache para que estas novas configurações sejam carregadas junto com o novo processo do apache + PHP.

restartando-apache

 

Habilitando debug no Netbeans

Em um projeto qualquer clique com o direito do mouse e vai em “Propriedades”. Em seguida entra nas configurações de execuções e insere o caminho onde sua aplicação será executada conforme na imagem a seguir.

configurando-a-execucao

 

O próximo passo é definir um ponto de parada de execução (Break Point) e clicar em “Depurar”.

break-point

 

Pronto! Agora basta ler a documentação do Netbeans sobre depuração de código e se aventurar!

executando-e-debugando

 

Não entrerei aqui no mérito da realização de debug em si porque acredito que é muito texto para digitar e já há um material de excelente qualidade do próprio Netbeans, o intuito era somente mostrar como realizar a configuração para tal debug 😉

 

UPDATE

Este post foi publicado há um bom tempo, com isso talvez a configuração pode não funcionar corretamente como apresentado aqui (dependendo da versão do xdebug, php, whatever). O Erik Figueiredo postou em seu blog um artigo com as versões correntes para 2015. Testei e funcionou redondo, se tiver problemas com o que apresentei aqui leia o artigo dele https://blog.erikfigueiredo.com.br/usando-o-xdebug-do-php.

 

Recomendo a leitura: Iniciando com TDD e Repositório Git em pasta existente

Menu