Home >Backend Development >PHP Tutorial >PHP remote debugging XDEBUG, debugging xdebug_PHP tutorial

PHP remote debugging XDEBUG, debugging xdebug_PHP tutorial

WBOY
WBOYOriginal
2016-07-12 09:01:59844browse

XDEBUG for PHP remote debugging, debugging xdebug

When developing, I always use XDebug for local debugging, but recently I joined some projects. The environment is too complicated. It's really troublesome to build a development environment locally, so how do we use xdebug for remote debugging?

I used a virtual machine to build a simulation environment for experimental instructions:

1. Virtual machine IP: 192.168.174.130, the virtual machine is used to build a lampp environment

2. Physical machine IP: 192.168.174.1, this is the IDE development environment.

First I installed a lampp in the virtual machine and added a vhosts, as follows:

vim /opt/lampp/etc/extra/httpd-vhosts.conf
<VirtualHost *:80>
  ServerAdmin webmaster@dummy-host.example.com
  DocumentRoot "/data/web"
    <Directory "/data/web">
        Options All
        AllowOverride All
        Require all granted
    </Directory>
  ServerName www.test.com
  ErrorLog "test-error_log"
  CustomLog "test-access_log" common
</VirtualHost> 

In order to facilitate the setting of a domain name for vhosts, this requires modifying the /etc/hosts of the physical machine before accessing:

192.168.174.130 www.test.com

The key step is to set up php.ini in the virtual machine to support xdebug remote debugging. The following code is added:

vim /opt/lampp/etc/php.ini
zend_extension="/opt/lampp/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so"
[xdebug]
xdebug.default_enable=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=192.168.174.130
xdebug.remote_port=9000
xdebug.remote_connect_back=1
xdebug.remote_autostart=1 

The two most critical settings are xdebug.remote_host and xdebug.remote_connect_back. remote_host should be set to the server’s IP, and remote_connect_back should be set to 1 or on

At this point, the server is set up. Next we set up the IDE. Please forgive me for being an IDE tool guy. I use Intellij IDEA, and the settings for PHPStorm are the same.

The first server to set up the project

In the Host section, fill in the address of the virtual machine server that can be accessed normally. The virtual domain name we set before is www.test.com, so this is what I wrote in the picture.

The most critical setting is to check this path mapping, and then write the file that needs to be debugged with its path on the server. For example, I need to debug a.php here, and the web we set up on the virtual machine server The directory is /data/web/, then its mapped path should be /data/web/a.php.

After everything is set up, you can start like local debugging.

OK, there is no technical content, but I hope it can help friends in need. Please note the IP address in the article and modify the address of your own server.

The above content has shared with you the relevant knowledge of XDEBUG for PHP remote debugging. I hope you like it.

Articles you may be interested in:

  • Installation and use of php Xdebug debugging extension.
  • Using XDebug debugging and unit test coverage analysis
  • Usage NetBeans PHP method
  • How to use FireFox plug-in FirePHP to debug PHP
  • Steps to build a PHP server debugging environment using Zend Studio PHPnow Zend Debugger
  • phpstorm configures Xdebug to debug PHP tutorial
  • A summary of solving the problem of error when ThinkPHP closes debugging mode
  • http://www.bkjia.com/PHPjc/1086657.html
www.bkjia.com

true

TechArticlePHP remote debugging XDEBUG, debugging xdebug When developing, I always use XDebug for local debugging, but recently I added some In the project, the environment is too complicated, and we need to build a development locally...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn