Instalando e Configurando o XDebug com NetBeans usando Vagrant e Drupal 7

Porque ferramentas de debug são fundamentais para desenvolvimento php profissional (lembro de um amigo que dizia que nenhum código está suficientemente bem testado enquanto não passar por um debug)

Se você tem um ambiente com vagrant bem configurado (ou equivalente), como é o caso dos devs da Itelios, então a coisa é tão simples quanto:

No Netbeans, botão direito no seu projeto, escolha Propriedades. Selecione Run Configuration no painel da esquerda e clique em Advanced no painel central.

Agora mapeie a pasta do seu vagrant para a pasta local do seu computador:

Pronto!  Foi muito fácil não? Agora se você não tem um vagrant tão bem configurado assim, você talvez precise instalar e configurar o Xdebug, vamos lá:

Instalar XDebug

Basta rodar o comando:

sudo pecl install xdebug

Configurar XDebug

Para isso, crie um arquivo xdebug.ini na pasta /etc/php5/conf.d, com o seguinte conteúdo:

zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so

xdebug.remote_connect_back=1
xdebug.default_enable=1
xdebug.remote_autostart=0
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.max_nesting_level = 200
xdebug.remote_host=10.0.2.2

A primeira linha desse arquivo contém um path meio estranho. Acredito que no momento da instalação da extensão o PEAR deve dizer qual o path no qual ele instalou a extensão. Se você não reparou ou caso ele não diga, você pode descobrir o path do seu xdebug através de:

 find / -name 'xdebug.so' 2> /dev/null

Esse comando demora um pouco para executar, e se você tiver mais de uma versão de xdebug instalado, eu usaria a mais recente.

Agora, basta reiniciar o seu Apache com sudo service apache2 restart e clicar no botão Debug do NetBeans (ou Ctrl+F5).

Ah! Não se esqueça de fazer os passos do início deste post para configurar seu NetBeans!