Troubleshooting connectivity with remote debugger established through SSH tunnel
If you're using ssh tunnel to establish connectivity between remote debugger and the IDE, but something went wrong and
debugger does not start, follow the instructions below. If you don't use ssh tunnel, please read
these instructions instead.
- Start PhpED and open View->Tabs->Tunnels window. Make sure that ssh tunnel is running -- there is a node with
tunnel account and green trinangle next to it. If there is no tunnel, please create one according to instructions, then open
Tools->Settings->Run & Debug->Settings page. Check "Use SSH tunnel" checkbox and select your tunnel in the dropdown
NOTE: if you use per-project Debugger Settings, there will be yellow triangle on top of the settings saying that
the project overrides all global settings on this page. In this case you have to open project properties, check
"Use SSH tunnel" checkbox and select tunnel name in the dropdown in this dialog.
- Open Project Propeties and proceed with Project Settings Wizard pages
- If it returned with error stating that the debugger is not installed, proceed with
installing the debugger instructions
- If the problem is "debugger is not allowed to connect to the client machine", you have to
update debugger.hosts_allow and debugger.ports debugger settings in php.ini and restart web to have
changes in effect. These settings is what allows or disallows the debugger
to connect to the client machine. In order to allow the connection with ssh tunnel at 7869 port, they should
debugger.hosts_allow=localhost 127.0.0.1 [::1]
- If the communication between remote debugger and IDE is not established and returned a timeout error, please
make sure that the firewals on the server and client are properly configured and firewall on the server
allows debugger module (apache process) to the local TCP/7869 port, and firewall on the client
machine allows PhpED to connect to dbglistener.exe on TCP/7869 port. You may also want to check
that ssh tunnel is listening on the server's 7869 port and bound to localhost (127.0.0.1 and/or ::1).
In order to check this, please open console on the server and run
netstat -na|grep tcp|grep -F ":7869"|grep LISTEN
NOTE: some systems may require different arguments for netstat. With -na we want to see listening
and regular sockets and their ports and addresses in numeric form, grep filters the output and selects
only the line with tcp, :7689, and LISTENING
If this command does not return anything, please consult with your server administrator.
- As soon as the Wizard succeeded with its checks, connect to your server and create a simple script like below:
echo "hello world";
- Make sure it works in your browser, then open this file in the IDE using project's publishing account and press F7 (Step).
At this moment the debugger should start
- In case of any problems, don't hesitate to contact NuSphere Support using Contact us form