一、xdebug php.ini配置
首先在服务器上下载xdebug包,解压用phpize编译安装扩展,关于编译安装就不做过多介绍了;扩展安装完成后配置php.ini文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
[XDebug] ;DLL文件目录 zend_extension="c:/xampp/php/ext/php_xdebug-2.5.5-5.6-vc11.dll" ;IDE KEY xdebug.idekey="PHPSTORM" ;远程调试功能,必须 xdebug.remote_enable=1 xdebug.remote_autostart=1 xdebug.remote_port="9000" xdebug.remote_mode="req" xdebug.remote_handler="dbgp" ;如果配置该项就不需要配xdebug.remote_host ;xdebug.remote_connect_back=1 ;如果是外网ip,且能直接访问端口可实现远程调试功能 xdebug.remote_host="192.168.0.1" ;开启跟踪回溯功能 xdebug.auto_trace=1 xdebug.trace_enable_trigger=1 xdebug.trace_output_dir="C:\php-xdebug-trace" xdebug.trace_enable_trigger_value="XDEBUG_TRACE" ;记录每个函数的返回值 xdebug.collect_includes=1 xdebug.collect_params=1 xdebug.collect_return=1 xdebug.collect_assignments=1 xdebug.collect_vars=1 xdebug.default_enable=1 xdebug.show_local_vars=1 xdebug.show_exception_trace=0 |
下面介绍几个主要配置项:
#允许远程调试
xdebug.remote_enable=1
#如果配置该项就不需要配xdebug.remote_host
xdebug.remote_connect_back=1
#远程调试端口
xdebug.remote_port=9001
#调试器的关键字
xdebug.idekey=”PHPSTORM”
配置完成后重启php-fpm 记得加-R 使用root用户启动
二、进入PHPStorm配置(完全远程调试)
为什么说完全远程调试呢?
1.不依赖本地PHP环境
2.不依赖本地webserver
3.浏览器不需要装调试插件
我的phpstorm版本是2016.2,其他版本是否需要依赖前三项未知。
完全依赖服务器PHP环境
第一步配置远程项目路径与本地项目路径映射
①连接服务器
②添加映射
第二步phpstorm配置远程PHP环境
到此已经完成一半了,接下来开始配置phpstorm的xdebug端口
继续配置远程server
开始运行测试
OK配置全部完成
还有最最关键的一步,配置路由器端口映射
发起了远程调试请求,但是IDE需要接收调试信息,大部分开发人员都是在局域网内开发,需要将xdebug返回9001端口映射到本机9001端口;关于这一步不同的路由器配置方式不同,提供一个搜索关键词“路由器配置虚拟服务器”或寻求公司运维人员帮助