Quando il server xdebug è in esecuzione da IntelliJ IDEA, ricevo 502 Bad Gateway
da nginx quando provo a caricare il mio sito per triggersre i breakpoint.
Se interrompo il server xdebug, il sito funziona come previsto.
Quindi, non sono in grado di eseguire il debugger, ma ha funzionato in precedenza (!). Non è in grado di individuare perché ha improvvisamente smesso di funzionare.
Una breve spiegazione del setup (fammi sapere se ho bisogno di approfondire questo).
La mia app php è in esecuzione in un contenitore docker ed è collegata a nginx in esecuzione in un contenitore diverso utilizzando volumes_from
nella window di composizione.
Dopo aver avviato l'app, posso verificare usando phpinfo();
il module xdebug è caricato.
Il mio xdebug.ini ha il seguente contenuto:
zend_extension=xdebug.so xdebug.remote_enable=1 xdebug.remote_host=10.0.2.2 xdebug.remote_connect_back=0 xdebug.remote_port=5555 xdebug.idekey=complex xdebug.remote_handler=dbgp xdebug.remote_log=/var/log/xdebug.log xdebug.remote_autostart=1
Ho ottenuto l'indirizzo IP per remote_host (where è in esecuzione il server xdebug) seguendo questi passaggi:
docker-machine ssh default route -n | awk '/UG[ \t]/{print $2}' <-- Returns 10.0.2.2
Per verificare che potevo raggiungere il server di debug dal mio contenitore php, ho fatto i seguenti passi
docker exec -it randomhash bash nc -z -v 10.0.2.2 5555
Fornendo il seguente output a seconda del server xdebug in esecuzione o less:
Connection to 10.0.2.2 5555 port [tcp/*] succeeded!
nc: connect to 10.0.2.2 port 5555 (tcp) failed: Connection refused
Quindi IntelliJ IDEA è sicuramente impostato per ricevere le connessioni su 5555. Ho anche fatto il mapping del path appropriato tra i miei routes dei file di origine e il path remoto (quando si imposta il server PHP Remote Debugging dall'interno di IDEA).
Qualche idea? Un po 'perso su questo perché non ho molta esperienza con nessuna di queste tecnologie: D