Skip to content

Instantly share code, notes, and snippets.

@kylefelipe
Last active February 14, 2024 17:18
Show Gist options
  • Save kylefelipe/bd4ed1361982656ade772b000bc76d63 to your computer and use it in GitHub Desktop.
Save kylefelipe/bd4ed1361982656ade772b000bc76d63 to your computer and use it in GitHub Desktop.
Instalando XDEBUG no ubuntu - XAMPP (LAMPP)

Tutoriais usados:

Tuto 1

Tuto 2 para o VSCODE

Instale a versão do php que estiver rodando no servidor, verifique a versão em http://localhost/dashboard/phpinfo.php

image

Em seguida instale o xdebug para essa versão:

sudo apt install php7.4-xdebug

Verifique na pasta /usr/lib/php que será criada uma pasta com a data de modificação do dia da instalação:

image

Dentro desta pasta deve conter o arquivo xdebug.so, guarde esse caminho para a próxima etapa.

Edite o arquivo php.ini que encontra na pasta do servidor etc/ e adicione as seguintes linhas:

[xdebug]
zend_extension=<Caminho do arquivo xdebug.so> # Substitua pelo caminho do seu arquivo
xdebug.client_port=9000
xdebug.mode=debug
xdebug.start_with_request = yes

Exemplo

image

Reinicie o servidor utilizando o manager do XAMPP

image

No VSCODE:

Crie o arquivo no root do projeto .vscode/settings.json com o seguinte dado:

{
    "php.version": "7.4.26",
    "php.validate.executablePath": "/opt/lampp/bin/php", # Caminho do executável do PHP no servidor
    "php.debug.executablePath": "/opt/lampp/bin/php", # Caminho do executável do PHP no servidor
}

Isso irá permitir o VSCODE utilizar o PHP do servidor para rodar os códigos e não o php do sistema.

Crie o arquivo no root do projeto .vscode/launch.json com o seguinte dado:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch built-in server and debug",
            "type": "php",
            "request": "launch",
            "runtimeArgs": [
                "-S",
                "localhost:8000",
                "-t",
                "."
            ],
            "port": 9000,
            "serverReadyAction": {
                "action": "openExternally"
            }
        }
    ]
}

image

Isso irá permitir que as extensões do XDBUG do vscode consigam conectar com o xdebug do projeto.

Assim quando a gente for no debuger e executar o script Launch built-in server and debug poderemos fazer o debug da aplicação normalmente.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment