PhpStorm 2.0: PHP Remote Debugging on cPanel with Xdebug 2.1.0 problem
Hi everyone!
I have been searching the searchable, read the readable and I have been unable to have PhpStorm 2.0 work on debugging files on my web server. While the debugging works locally, when trying to debug any file hosted on my web server nothing happens.
The server has a cPanel account configured with all that needs to be configured: XDebug 2.1.0, a the php.ini configured for that cPanel instance (PhpStorm1 ide key, port 9000, autostart, and all that jazz). I have had extremely great support from my hosting company's support team but they can't do more than they have done on their end making sure that all works as intended and nothing is coming in the way of XDebug.
I did inquire via email, but so far I have received only instruction to RTFM :p which I already did several times over to no avail.
XDebug is properly configured both on my local MAMP install and my server, PhpStorm 2.0 is running (still as trial) and is fully configured on my Mac. PhpStorm works when debugging using MAMP/Xdebug locally, but when it comes to the web server, PHPStorm doesn't seem to be working at all when I need to do a PHP Remote Debug... The Debugger connects but something just dosn't get triggered and PhpStorm reports: Waiting for incoming connection with ide key 'PhPStorm1'...with no values of any kind shown in the Debug>variables area. I have tried using debugging browsers extensions in Firefox and Safari and still nothing happened.
I monitor XDebug during my connection via terminal and I even manually start the "debugclient" making sure ports are up and all is working in order and here is what the Terminal output I get:
root@server [~]# debugclient
Xdebug Simple DBGp client (0.10.0)-
Copyright 2002-2007 by Derick Rethans.
- libedit support: enabled
Waiting for debug server to connect.
...at this point I run the debug Session set using the "edit configuration" and that's when PhpStorm shows: Waiting for incoming connection with ide key 'PhPStorm1'... I have the zero configuration (little green phone) set to On (listening/green)
So I go to the browser and hit the address of a test file "testfile.php" (a file that has 2 break points added editing the local file in PhpStorm). Even when hitting that page nothing happens... no results in the Debug>variables area, but in Terminal to the previous output I see this being added:
Connect
<?xml version="1.0" encoding="iso-8859-1"?>
<init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///home/cronoflo/public_html/testfile.php" language="PHP" protocol_version="1.0" appid="32111" idekey="13307"><engine version="2.1.0"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2010 by Derick Rethans]]></copyright></init>
(cmd)
So that would mean that Xdebug is working and the session has been triggered and debugging is on for that page... but then why I get nothing in the IDE?
Do I have to issue commands manually via Terminal? I am asking that because if I hit return after the (cmd appears) I get:
<?xml version="1.0" encoding="iso-8859-1"?>
<response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug"><error code="3"><message><![CDATA[invalid or missing options]]></message></error></response>
Which presupposes that I could issue debugging commands manually... What gives? How should one proceed?
From this point onwards I made no progress. I am unable to get anything going with debugging PHP in PhpStorm and I can't figure out what I am doing wrong since I am following the available instructions to the "T". So there may be no solution to my problem, but I find that hard to believe. Was anyone successful doing Remote Debugging using PhpStorm 2.0 on php files hosted on a cPanel account, with Xdebug 2.1.0 installed?
If there is a solution, it's either undocumented or it maybe involving a secret dance... this task that should have been straight forward following the proper instructions given on the documentation sites of the respective tools used, it has been quite unintuitive and a challenging nightmare with no reason to be. This whole thing is driving me nuts (and I am a fairly patient person) so, since I am really at my wits' end, any help from someone who can point me in the right direction or who could share how they got their PHP Remote Debugging to work with PhpStorm and Xdebug will be greatly appreciated :)
Thanks in advance for your help.
Cheers!
Please sign in to leave a comment.
Hello Timur77,
1) Remove all servers from PHP -> Servers
2) Enable 'Listen PHP debug connections' button.(don't run any run configurations - 'PHP Remote Debug' or 'PHP Web Application')
3) Reload page in browser(or active debug session in any other way)
Try this steps and report here about results.
Thank you for feedback!
I managed to get xdebug working after I opened up port 9000 on my router and set the xdebug.remote_host to the IP of my machine that is running PhpStorm. I think these two points were missing in the documentation, but were keeping me from debugging.
Cheers
Timur,
Thanks for sharing!
Timur,
We posted a brief installation guide based on your feedback - http://confluence.jetbrains.net/display/WI/Xdebug+installation+guide.
So, please check that each of your problem is covered there.
Thanks for feedback!