ich habe einen Server, mit dem ich mich über VPN verbinde.
Die Serveradresse ist 10.8.0.1 und meine Adresse ist 10.8.0.9. Die Verbindung steht, und ich kann darüber auch die Webseite, welche auf dem Webserver von 10.8.0.1 läuft im Browser anzeigen lassen.
Nun möchte ich gerne xdebug nutzen, um meine PHP-Scripte zu debuggen. Dazu habe ich dann in der php.ini folgende eintragungen gemacht:
Dann den Webserver neu gestartet und die Firewall für die interne Schnittstelle (also mein VPN-Netz) für TCP-Port 9000 freigegeben.
Im Eclipse habe ich dann unter Run >> Debug Configurations >> PHP Web Page einen neuen Server angelegt, dort den Server Debugger auf XDebug gesetzt, und als PHP-Server meinen VPN-Server neu angelegt.
Die Option "Break at First Line hab ich deaktiviert, und auto Generate ausgeschaltet, bzw. entsprechend angepasst.
Gehe ich dann auf meine Indexdatei, welche lediglich folgenden Inhalt hat:
und drücke F11 zum debuggen, passiert folgendes:
Auf dem Server in der Logdatei /var/log/apache2/error_log erhalte ich folgende Rückmeldung:
Meine Fragen dazu:
Die Datei, welche ich debuggen möchte (die ggf. von der Serverversion verschieden ist), liegt ja lokal bei mir... muss ich diese erst mit der Serverversion abgleichen (FTP-Upload), eh ich den Debug ausführe?
Ich hab das Firefox-Plugin Easy xDebug, kann ich damit ein Scipt auf dem Server direkt debuggen - also mir kontrollausgaben usw. ausgeben lassen.?
Warum bleibt der Debugger immer bei genau 57% hängen? Muss ich irgend etwas klicken, damit er ggf. das Dokument weiter debugt (ggf. hängt er an irgend einem Breakpoint?
Die Serveradresse ist 10.8.0.1 und meine Adresse ist 10.8.0.9. Die Verbindung steht, und ich kann darüber auch die Webseite, welche auf dem Webserver von 10.8.0.1 läuft im Browser anzeigen lassen.
Nun möchte ich gerne xdebug nutzen, um meine PHP-Scripte zu debuggen. Dazu habe ich dann in der php.ini folgende eintragungen gemacht:
Code:
[xdebug]
zend_extension = "/usr/lib64/php5/extensions/xdebug.so"
xdebug.remote_enable=On;
xdebug.remote_host="10.8.0.9"
xdebug.remote_port=9000;
xdebug.remote_handler="dbgp";
Dann den Webserver neu gestartet und die Firewall für die interne Schnittstelle (also mein VPN-Netz) für TCP-Port 9000 freigegeben.
Im Eclipse habe ich dann unter Run >> Debug Configurations >> PHP Web Page einen neuen Server angelegt, dort den Server Debugger auf XDebug gesetzt, und als PHP-Server meinen VPN-Server neu angelegt.
Die Option "Break at First Line hab ich deaktiviert, und auto Generate ausgeschaltet, bzw. entsprechend angepasst.
Gehe ich dann auf meine Indexdatei, welche lediglich folgenden Inhalt hat:
PHP:
$a = 1;$variable = "test";
$variable = 24;
$variable = "anderer wert";
- Eclipse wechselt in die Debug-Perspektive... die Karteikartenreiter Variables bleibt allerdings leer... in Breakpoints hab ich 3 gesetzte Breakpoints.
- Es wird der Firefox geöffnet, mit der richtigen Server-URL http://10.8.0.1/index.php?XDEBUG_SESSION_START=ECLIPSE_DBGP&KEY=12849026103078, die Seite bleibt aber komplett leer.
- Im Fußbereich (Statusleiste) - oder alternativ im Karteikartenreiter Progress von Eclipse sehe ich dann "Launching Server 1" (57%), und dabei bleibt es.
Auf dem Server in der Logdatei /var/log/apache2/error_log erhalte ich folgende Rückmeldung:
Code:
[Sun Sep 19 16:13:38 2010] [error] [client 10.8.0.10] PHP Stack trace:
[Sun Sep 19 16:13:38 2010] [error] [client 10.8.0.10] PHP 1. {main}() /srv/www/htdocs/contio/index.php:0
[Sun Sep 19 16:13:38 2010] [error] [client 10.8.0.10] PHP 2. phpinfo() /srv/www/htdocs/contio/index.php:2
Meine Fragen dazu:
Die Datei, welche ich debuggen möchte (die ggf. von der Serverversion verschieden ist), liegt ja lokal bei mir... muss ich diese erst mit der Serverversion abgleichen (FTP-Upload), eh ich den Debug ausführe?
Ich hab das Firefox-Plugin Easy xDebug, kann ich damit ein Scipt auf dem Server direkt debuggen - also mir kontrollausgaben usw. ausgeben lassen.?
Warum bleibt der Debugger immer bei genau 57% hängen? Muss ich irgend etwas klicken, damit er ggf. das Dokument weiter debugt (ggf. hängt er an irgend einem Breakpoint?
Zuletzt bearbeitet: