Desenvolvimento · Dicas & Tutoriais · Linux · PHP

Não consegue debugar PHP com o xdebug? É o firewall

Você já fez todas as alterações e configurações imagináveis, mas mesmo assim você não consegue debugar sua aplicação PHP com o xdebug, usando breakpoints, entre outros recursos?

Mesmo se o seu ambiente estiver num container Docker, ou instalado na máquina estilo XAMPP, é preciso liberar a porta do firewall do sistema operacional que é usada pelo xdebug.

Por exemplo: eu ativei o firewall no meu PC com Linux Mint. E então eu não consegui mais usar os breakpoints no PHPStorm para pausar minha aplicação e conectar com o xdebug no ambiente do Docker. Depois de bater muita cabeça, descobri que era o firewall.

Solução para Ubuntu/Linux Mint: é preciso liberar a porta usada pelo xdebug para poder se conectar. No meu caso, era a porta 9000 (que é padrão), mas você pode definir outra porta e aí vai do caso. Para liberar portas do firewall é possível usar a linha de comando:

sudo ufw allow <PORTA_USADA_PELO_XDEBUG>

Solução para Windows: veja como liberar portas do firewall do Windows através desse artigo. [Em inglês]

Depois dessas configurações, aí é preciso ver como sua IDE (ou editor de códigos) tem que ser configurada para poder realizar debugging. É preciso prestar atenção também nas configurações do xdebug – se está instalado, configurado e ativado.

Curtiu? Então aperte o botão:
LEIA TAMBÉM  Obtendo as teclas que estão sendo pressionadas ao mesmo tempo com Javascript e jQuery