2009-03-28 23 views
15

Recientemente he intentado ponerme en marcha con Netbeans 6.5 después de haber obtenido una calificación tan alta en la revisión IDE de la revista Smashing. http://www.smashingmagazine.com/2009/02/11/the-big-php-ides-test-why-use-oneand-which-to-choose/Cómo depurar PHP con netbeans y Xdebug

Mi razón principal para cambiar de Notepad ++ es que me gustaría poder depurar mi código y establecerlo.

He seguido las instrucciones sobre cómo instalar xdebug tanto en el proveedor http://xdebug.org/ como en el sitio web de netbeans. http://www.netbeans.org/kb/docs/php/debugging.html#gettingReady pero fue en vano.

¿Cómo se hace? ¿Alguien más tiene errores de depuración trabajando en netbeans?

(Mi configuración es: Windows XP, el servidor Wamp 2.0, PHP 5, Netbeans 6.5.1)

+0

Antes de perder mucho tiempo tratando de encontrar la forma de hacer que la depuración de Netbeans funcione con mod_rewrite, no lo hará. Ver http://netbeans.org/bugzilla/show_bug.cgi?id=152262 Sin embargo, funcionará con archivos .php y de línea de comandos. – cbednarski

+3

FYI, el tipo que recibió 3 votos negativos, también conocido como Derick Rethans, escribió xdebug. Él no es un hablante nativo, así que solo fyi. – joedevon

Respuesta

6

hm, para mí, el NetBeans IDE fue el primero que depuración de PHP estaba trabajando fuera de la caja.

¿El xdebug se muestra en phpinfo? si lo hace, debería funcionar con la configuración predeterminada. el único que se necesita es:

xdebug.remote_enable=on 

Así que si esto no se le permitió poner en su archivo php.ini, reiniciar Apache, y la depuración debería funcionar.

De lo contrario, deberá proporcionar más información para que lo ayude.

sy

3

No es un problema conocido que xdebug presente problemas con curl o mod_rewrite. Los únicos problemas que conozco son con Xdebug en Vista.

+0

_ "xdebug da problemas con curl o mod_rewrite" _ - ¿Podría ser más específico? – Sk8erPeter

0

Si tiene el problema en el que Apache decide bloquearse cada vez que ejecuta el depurador (que es lo que tenía y es extremadamente molesto). Estoy bastante seguro de que reinstalé xampp y volví a configurar xdebug. Creo que el problema tenía que ver con la instalación de zend-depurador extrañamente en php.ini y no modificando el php.ini correcto.

Eventualmente después de volver a instalarlo y reiniciarlo lo conseguí funcionando bien.

Ahora ejecuto un lanzamiento de desarrollo de Netbeans que tiene depuración en red con xdebug, así que lo ejecutamos todo en nuestro servidor de desarrollo y funciona de maravilla.

Buena suerte, no hay ninguna documentación decente sobre cómo configurar xdebug con net beans.

9

Es importante añadir esta línea en el php.ini:

xdebug.idekey="netbeans-xdebug" 

Nota: En NetBeans ir a la configuración y aspecto en el que el material Xdebug está configurado.Busque esa ID de sesión. En mi caso fue netbeans-xdebug.

0

He tenido problemas ocasionales con NetBeans y XDebug que se deben a una instrucción Watch que no está relacionada con el código que se está depurando.

En este caso, el depurador simplemente falla con una excepción de socket.

Retire los relojes si encuentra que esto está causando su problema. ¡En general, creo que XDebug es extremadamente útil!

Sin embargo, me doy cuenta de que esto puede no estar relacionado con el problema que tiene aquí, pero vale la pena tenerlo en cuenta.

1

Descubrí que en Netbeans necesita establecer la ruta webroot en los proyectos para la aplicación/raíz web. Si lo haces, la depuración funciona sin problemas.

0

Bueno delito era, olvidando

[xdebug] 

como un encabezado de sección en php-ini. Y, por supuesto, "aparque" sus cosas justo antes de que comience otra sección (por ejemplo, [Fecha] o [iconv]), de lo contrario, las colocará en la sección equivocada. (En el comentario djungle de php.ini esto ocurre fácilmente.)

0

En mi caso fue un proceso que se ejecuta en mi máquina (Windows 7) que se utiliza el puerto 9000 ya se llama aeagent.exe

cambié La configuración de php.ini en "xdebug.remote_port = 9001", realizó el cambio correspondiente en netbeans, luego reinició Apache. Ahora funciona.

Gracias a la herramienta TCPView de SysInternals.

0

Cuando ejecuté netbeans en Ubuntu, también me enfrenté a este problema, parece que intenté con todas las soluciones encontradas en Internet, pero todo fue en vano.

¡Lo único que finalmente ayudó fue ejecutar netbeans con el comando SUDO! Parece que el usuario normal no tiene permiso para escuchar en el puerto 9000 (o cualquier otro).

sudo netbeans & 

... y listo, puedo depurar de nuevo! Tal vez él se puede guardar un día o dos

1

Si está usando XAMPP en Windows:

Sólo tiene que abrir su php.ini archivo y cambiar estas dos líneas

;xdebug.profiler_enable = 0 
;zend_extension = "C:\xampp\php\ext\php_xdebug.dll" 

en

xdebug.profiler_enable = 1 
zend_extension = "C:\xampp\php\ext\php_xdebug.dll" 

(Precaución: Si su versión xampp es viejo, debe descargarlo de http://xdebug.org/download.php, descargar el de 32 bits, incluso su sistema operativo es de 64 bits Por ejemplo, el nombre del xdebug que descargó es php_xdebug-2.2.1-5.4-vc9.dll. Primero copie php_xdebug-2.2.1-5.4-vc9.dll en el directorio C: \ xampp \ php \ ext \, luego su la segunda línea será zend_extension = "C:\xampp\php\ext\php_xdebug-2.2.1-5.4-vc9.dll)

Después de eso apache apache y comience nuevamente, eso es todo.

0

Ahora su trabajo después de perder las 3 horas para hacer el trabajo Xdebug en Windows8 con wamp 2.2 sustitución de las líneas originales por debajo de [Xdebug] con el siguiente

zend_extension = "c:/wamp/bin/php/php5.3.13/zend_ext/php_xdebug-2.2.0-5.3-vc9.dll" 
    ;make sure path of your own php_xdebug, dll version may vary. 

    [xdebug] 

    xdebug.remote_enable = on 
    xdebug.remote_handler=dbgp 
    xdebug.remote_host=localhost 
    xdebug.remote_port=9000 
;recheck your port number in netbeans [Tools=>options=>php=>debugging there it is: debugging port] 
    xdebug.profiler_enable = on 
    xdebug.profiler_enable_trigger = on 
    xdebug.profiler_output_name = cachegrind.out.%t.%p 
    xdebug.profiler_output_dir = "c:/wamp/tmp" 

Ahora haga clic en el icono de WAMP en la barra de tareas y "reiniciar todos los servicios "

Well..Now paso final >> START NETBEANS como administrador acebo alma de Windows8 te odio: <

Cuestiones relacionadas