Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

phpStorm - configure xDebug

I try to configure my phpStorm for debugging according to this tutorial .

My entire project is located in C:\work\Projects\xampp\htdocs\myCode

In the phpStorm I did to follow -

Under File > PHP > Servers:

Name: myCodeDebug
Host:http://localhost/myCode
Port:80
Debugger:Xdebug

Absolute path on server: http://localhost/myCode (same as the project location).

I use Apache server in ports 80,443.

My PhpStrom version is 7.1.3

Now I mark some breakpoints, go to Chrome and navigate to http://localhost/myCode/ but no any phpStrom debugger is promted although the entire website is got loaded .

What is missed here and how to make it works with xDebug?

Update:

Following the suggested in the comments , I followed this tutorial and now I have the chrome extension - Xdebug .

In this manual I paste all the content of php -i and did all what it required .

As described in Xdebug generator , I added two bookmarks - start debug and stop debug for IDE key = PHPSTORM .

In my php.ini I have -

[XDebug]
xdebug.idekey = "PHPSTORM"
xdebug.remote_port = 80

I work with xampp port 80 .

Now I hit the start deebug bookmark , in the phpStrom press on start to listen to php debug and set any breakpoint in php scope, set the Xdebug extension on Debug mode , browse to localhost/myCode/index.php but no any debugging is occur in the phpStrom .

How to config it correctly ?

Update 2:

Under cmd php --version I have -

PHP 5.5.11 (cli) (built: Apr  8 2014 15:07:14)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans

Also all in File | Setting | php | servers was deleted .

Update 3:

[Here is my phpinfo();] (personal details had changed to XXXXXXXX) .

like image 979
URL87 Avatar asked Jun 19 '14 15:06

URL87


People also ask

Where is Xdebug config?

ini" file to configure XDebug. The "Loaded Configuration File" in the screenshot above tells you what "php. ini" file is being used. For Windows, this is normally "c:\xampp\apache\bin\php.

How do I know if Xdebug is working?

Verify that Xdebug is properly running by checking again with phpinfo() or php -v as explained above. Note that 9003 is the default port. If this port is used by another service on your system, change it to an unused port. After adding these settings, restart your webserver again.


2 Answers

The first thing is that in your php.ini it seems you don't have xdebug installed. So first thing is you should go to Xdebug installation guide and paste here your php.ini file so you will get detailed instructions how to install it.

If you install it correctly you should have something like below in your php.ini file:

xdebug in php.ini

The second thing I think is changing your xdebug port. Although your Apache is working at 80 port, for your xdebug you should have set another port.

In your php.ini you should set for example:

xdebug.remote_port=10000

and of course restart server (I have 9000 port be default be I was getting notification in PhpStorm that this port is busy so I simple changed id to 10000 port).

Now you should go to your PhpStorm settings and choose PHP -> Servers. You should have here your server and port 80 and you should have here "validate remote environment". Click it and in new Window you should have "Validate" button. You should click it to make sure it's fine. You should have here for example your Xdebug information displayed.

Now you should in your PhpStorm go to setting (again) and choose PHP -> Debug. Here you need to have the same port as you set in your php.ini file (10000).

I have the following setting in my PhpStorm in this Debug settings:

phpstorm xdebug

Now I assume you have your project already open and created some breakpoints. You should click icon "Start listen for PHP Debug connections) in your toolbar - 2nd from debug icon in toolbar.

Now you can go to your browser and if you have your plugin installed correctly and you choose debug and refresh your page in browser, you should get info in your PhpStorm to accept connection to debug and you will be able to debug your site.

If you still have problem you should also look at http://www.jetbrains.com/phpstorm/marklets/ - you may use those instead of using browser addon (simple add generated links to your toolbar/favorites in your browser).

What I could also advise you is to look at this PhpStorm xdebug tutorial - it's almost 1 hour but you should be able to learn a lot from it.

like image 130
Marcin Nabiałek Avatar answered Oct 12 '22 01:10

Marcin Nabiałek


While not specific to PHPStorm, have you looked through [http://xdebug.org/docs/install#debugclient]? It walks you through step-by-step from installation to debugging code. Plus, it's from the xdebug website so it's a credible source.

Starting The Debugger

In order to enable Xdebug's debugger you need to make some configuration settings in php.ini. These settings are xdebug.remote_enable to enable the debugger, xdebug.remote_host and xdebug.remote_port to configure the IP address and port where the debugger should connect to. If you want the debugger to initiate a session when an error situation occurs (php error or exception) then you also need to change the xdebug.remote_mode setting. Allowed values for this setting are "req" (the default) which makes the debugger initiate a session as soon as a script is started, or "jit" when a session should only be initiated on an error.

It's got lots of configuration settings, tips, and general help to get you up and running. It also provides links to several browser interfaces for Xdebug, including (what claims to be) the easiest to use (Firefox), The easiest Xdebug. There's also plugins for Chrome, Safari, and Opera.

Let me know if you need any further help.

Again, may not be specific to your IDE, but it may point you in the right direction,

like image 42
Trick Avatar answered Oct 12 '22 00:10

Trick