1. 首页
  2. >
  3. 编程技术
  4. >
  5. PHP

php+phpstorm+xdebug+PuTTY远程调试方式

1、环境说明

本地开发机:windows

开发浏览器:chrome

远程服务器:ubuntu、nginx, 服务器无法直接通过ip访问本地开发机,所以使用了PuTTY做映射,否则无需映射即可直接配置使用


注意:php的路由需要能够路由到真实的php文件,否则无法远程调试

2、安装必要程序

(服务器)

1) 安装xdebug, apt-get install php5-xdebug

配置:在php.ini里增加 (重启php服务)

[xdebug]

zend_extension=/usr/lib/php5/20121212/xdebug.so

xdebug.remote_enable=1

xdebug.remote_host=127.0.0.1

xdebug.remote_port=7777

xdebug.idekey=PHPSTORM


2) nginx

server {

listen 8009;

server_name localhost;

charset utf-8;

location / {

root /usr/XX/project/upland/src;

index index.php;

}


location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /usr/XX/project/upland/src$fastcgi_script_name;

include fastcgi_params;

}

}

(客户端)

1)phpstorm中配置端口为7777

php+phpstorm+xdebug+PuTTY远程调试方式

2) 配置链接远程 Tools >> Deployment

php+phpstorm+xdebug+PuTTY远程调试方式


php+phpstorm+xdebug+PuTTY远程调试方式

3) 客户端安装插件 Xdebug helper ,使用Debug有效

4) phpstorm

php+phpstorm+xdebug+PuTTY远程调试方式

5)PuTTY

php+phpstorm+xdebug+PuTTY远程调试方式

php+phpstorm+xdebug+PuTTY远程调试方式

Open链接

3、基本验证

phpstrom > Tools > Web Server Debug Validation

php+phpstorm+xdebug+PuTTY远程调试方式

该处的黄色警告是因为我们使用了PuTTY导致的,可以忽略

3、chrome

执行 http://172.16.0.222:8009/index.php即可在本地phpstrom加断点进行调试了

确保插件绿色:(Xdebug helper)

php+phpstorm+xdebug+PuTTY远程调试方式

不使用该插件的话使用参数:?XDEBUG_SESSION_START=PHPSTORM

在phpstorm中配置Servers对应文件

File->Settings->Languages&Frameworks->PHP->Servers

做文件映射,将远程与本地路径进行映射

php+phpstorm+xdebug+PuTTY远程调试方式

可以远程加断点调试了,happy!

(附:好多不是从c语言学习起来的同学好像没有用过断点功能,真的推荐使用断点来调试,直接打日志调试效率还是比不了断点方式)