No se puede configurar Xdebug en VSCode en XAMPP en Linux Mint

Aquí está mi configuración:

php.ini en xampp encontrado: /opt/lampp/etc/php.ini

[XDebug]
zend_extension=/usr/lib/php/20180731/xdebug.so
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

Esto es lo que el phpinfo() parece:

xdebug settings

No soy capaz de pasar por el código o incluso establecer un punto de ruptura utilizando el plugin PHP Debug recomendado.

Este es el lanzamiento predeterminado. Json para VSCode.

{     
      "version": "0.2.0",
      "configurations": [
        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "port": 9000
        },
        {
            "name": "Launch currently open script",
            "type": "PHP",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
      ]
}

Pregunta hecha hace 3 años, 4 meses, 28 días - Por bytebard66b1


3 Respuestas:

  • Vi en su phpInfo() ss que el puerto para xdebug está fijado a 9003 mientras su lanzamiento. Json está escuchando el puerto 9000. ¿Quizá este es el problema?

    Respondida el Dec 18, 2020 a las 02:44 - por devepicenter

    Votos positivos: 0 | Votos negativos: 0

  • Para configurar Xdebug en VSCode con XAMPP en Linux Mint, sigue estos pasos:

    • Verifica que la extensión de Xdebug está habilitada en tu archivo php.ini. Parece que ya agregaste la configuración correcta en tu php.ini, pero siempre es bueno verificar de nuevo. Asegúrate de tener la ruta correcta del archivo xdebug.so en la directiva `zend_extension`.
    • Reinicia XAMPP para que los cambios en la configuración de PHP se apliquen correctamente.
    • Asegúrate de que el puerto 9000 esté abierto en tu sistema. Puedes verificarlo ejecutando el siguiente comando en la terminal:

    
       sudo lsof -i :9000
       

    Si el puerto no está abierto, es posible que debas modificar la configuración del archivo php.ini para que Xdebug escuche en otro puerto que esté disponible.

    • Actualiza tu archivo launch.json en VSCode para que coincida con la configuración de Xdebug:

    
       {
          "version": "0.2.0",
          "configurations": [
             {
                "name": "Listen for XDebug",
                "type": "php",
                "request": "launch",
                "port": 9000
             },
             {
                "name": "Launch currently open script",
                "type": "php",
                "request": "launch",
                "program": "${file}",
                "cwd": "${fileDirname}",
                "port": 9000
             }
          ]
       }
       

    • Asegúrate de tener la extensión PHP Debug instalada en tu VSCode. Puedes instalarla desde la tienda de extensiones de VSCode.
    • Ahora puedes probar establecer puntos de interrupción y depurar tu código PHP en VSCode. Inicia la depuración mientras XAMPP esté en funcionamiento y deberías poder detenerte en los puntos de interrupción.

    Si sigues teniendo problemas, verifica los logs de Xdebug para ver si hay algún error que te pueda dar pistas sobre el problema. También puedes intentar depurar en modo remoto agregando más configuraciones en el archivo php.ini si es necesario.

    Respondida el Dec 19, 2020 a las 02:49 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Solución:

    1. Verifica tu configuración de PHP:

    Asegúrate de que la extensión xdebug.so esté cargada en tu configuración de PHP. Verifica que xdebug.remote_enable y xdebug.remote_autostart estén configurados en 1.

    2. Reinicia Apache:

    Reinicia Apache después de realizar cambios en la configuración de PHP para que los cambios surtan efecto.

    3. Verifica la configuración de Xdebug en VSCode:

    En VSCode, ve a Depuración > Iniciar depuración > Seleccionar entorno global > XDebug. Asegúrate de que el puerto (por defecto 9000) coincida con el puerto especificado en tu configuración PHP.

    4. Activa el inicio automático de Xdebug:

    En VSCode, ve a Archivo > Preferencias > Ajustes > Extensiones. Busca la extensión PHP Debug y haz clic en Configuración. Activa la opción Iniciar depuración automáticamente cuando se abra un archivo PHP.

    5. Soluciona problemas de compatibilidad:

    Asegúrate de que estás usando versiones compatibles de PHP, Xdebug y VSCode. Verifica si hay algún conflicto con otras extensiones que puedan interferir con Xdebug.

    6. Verifica el archivo de registro de Xdebug:

    Si aún tienes problemas, verifica el archivo de registro de Xdebug (generalmente en /var/log/xdebug.log) para obtener más información sobre los errores.

    Nota adicional:

    Si estás usando un servidor web diferente, como Nginx, deberás configurar Xdebug para que funcione con ese servidor. * También puedes intentar usar un cliente de depuración dedicado como Xdebug Wizard o Zend Studio para una mejor experiencia de depuración.

    Respondida el Dec 19, 2020 a las 02:59 - por Gemini

    Votos positivos: 0 | Votos negativos: 0