乐心
Always dream. Always explore.
乐心的博客
PHPStorm配置Docker内Xdebug调试

安装xdebug扩展,然后增加php.ini里xdebug的配置

zend_extension=xdebug.so

xdebug.default_enable=0
xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.remote_connect_back=0
xdebug.cli_color=0
xdebug.profiler_enable=0
xdebug.profiler_enable_trigger=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req

xdebug.remote_port=9001
; 注意下面这一行是关键
xdebug.remote_host=host.docker.internal
xdebug.profiler_output_dir="/data/www/xdebug_profiler"
xdebug.idekey="PHPSTORM"

配置PHPStorm

PHP-Fpm模式的debug配置

  1. 配置xdebug相关,按照截图里的配就行
https://blog.quzone.cn/wp-content/uploads/2020/12/image.png
修改xdebug里的debug port为9001
https://blog.quzone.cn/wp-content/uploads/2020/12/image-2.png

2. 增加Server,这里比较特殊的就是要勾选Use path mappings,然后在Absolute path on the server一栏里,填写物理机路径对应的docker映射目录的地址,这样phpstorm在接收到xdebug提供的文件路径后,就能根据映射转换成真实机的文件路径

https://blog.quzone.cn/wp-content/uploads/2020/12/image-1.png

3. 配置debug监听,新建一个Remote Debug的配置

https://blog.quzone.cn/wp-content/uploads/2020/12/image-4.png

PHP-fpm的监听模式已经配置好了,点击右上角虫子旁边的电话图标开启监听,然后打上断点,发一个http请求就能被phpstorm拦截到并成功断下来了


Cli命令行脚本调试

  1. 为PHPStorm配置一个Cli执行器,注意最重要的是截图中的5,同样的需要指定真实机和Docker容器文件的映射关系,这样PHPStorm才能找到断点对应的文件
https://blog.quzone.cn/wp-content/uploads/2020/12/image-5-1024x610.png

2. 指定一下docker的配置文件地址,是docker-compose的话就指定docker-compose的配置文件地址,liftcycle我建议选exec模式,速度快,有些人是老版本的PHPStorm,没有这个选项,建议更新到最新版本

https://blog.quzone.cn/wp-content/uploads/2020/12/image-6.png

3. 配置debug,新增一个PHP Script的脚本,Interpreter里选择刚才新增的Cli执行器就行了

https://blog.quzone.cn/wp-content/uploads/2020/12/image-7.png

至此Cli命令行脚本调试也可以完成,打上断点,点击右上角的小虫子图标就可以开始调试了

如果喜欢这篇文章,欢迎推荐给你的朋友

推荐文章

发表评论

textsms
account_circle
email

乐心的博客

PHPStorm配置Docker内Xdebug调试
安装xdebug扩展,然后增加php.ini里xdebug的配置 zend_extension=xdebug.so xdebug.default_enable=0 xdebug.remote_autostart=1 xdebug.remote_enable=1 xdebug.remote_connect_back…
扫描二维码继续阅读
2018-12-16