2010-11-23 7 views
9

Mi configuración de trabajo es un host de Windows XP que ejecuta una pila Ubuntu VM LAMP. Estoy usando PhpStorm para editar mi código en mi equipo host de Windows. Al guardar los archivos, se cargan automáticamente en la máquina virtual a través de SFTP. Todo funciona para este proceso, excepto la depuración.Depurar VM con xDebug y PhpStorm

tengo PhpStorm configurada para tener un servidor llamado "UbuntuVM" con la siguiente configuración:

Depurador:
- XDebug
de depuración configuración de la sesión:
- rotura en la primera línea de
- Esperar conexión con llave ide: XDEBUG_PHPSTORM
Antes del lanzamiento:
- subir archivos al servidor seleccionado

que estoy usando Ch roma con Xdebug Helper, y han configurado la extensión para usar "Otro" como IDE, con "XDEBUG_PHPSTORM" como la clave.

La máquina virtual tiene el siguiente en el php.ini:

zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so" 
xdebug.remote_enable=1 
xdebug.remote_host=10.1.6.22 
xdebug.remote_port=9000 
xdebug.remote_handler=dbgp 
xdebug.remote_mode=req 
xdebug.collect_params=On 
xdebug.show_local_vars=On 

Cuando me puse un punto de quiebre en mi IDE, habilite el depurador en Chrome, y volver a cargar la página, nunca golpear el punto de ruptura; y el IDE dice "Esperando conexión en el puerto 9000 con la clave ide 'XDEBUG_PHPSTORM'".

¿Alguien tiene alguna idea de por qué no estoy llegando a mis puntos de quiebre?

+1

He escrito una pauta para exactamente esto: [Cómo depurar el código en un servidor remoto (o en el cuadro vagabundo) con PHPStorm] (http://www.dev-metal.com/debug-code-remote-server -vagrant-box-phpstorm /). Vagrant es una tecnología que configura servidores dentro de máquinas virtuales fácilmente. – Sliq

+0

Esta es una publicación muy antigua. Desde entonces me he mudado a Vagrant también. Es el sueño de un desarrollador hecho realidad. –

Respuesta

7

Viene a descubrir que xdebug.remote_host no es necesario, más bien, use xdebug.remote_connect_back=1.

+2

Ahora cualquiera puede depurar su sitio web ... – kervin

+4

@kervin suponiendo que la red de la VM es accesible externamente – jlb

+2

@kervin Además de eso, solo depura entornos de desarrollo, nunca servidores de producción (solo en casos extremadamente raros). – Sliq