Xdebug与PhpStorm集成适配Laravel项目不生效问题求助
配置调整步骤
1. 修正Xdebug配置冲突(优先解决)
你当前的xdebug.ini同时存在Xdebug 2的remote_*旧参数和Xdebug 3的新参数,参数冲突会导致配置不生效。直接清空/etc/php/7.4/mods-available/xdebug.ini,替换为以下统一的Xdebug 3配置:
zend_extension=xdebug.so xdebug.mode=debug xdebug.client_host=127.0.0.1 xdebug.client_port=9003 xdebug.start_with_request=yes xdebug.log=/tmp/xdebug_remote.log
- 同时删除
/etc/php/7.4/apache2/php.ini里重复的zend_extension=xdebug.so行,避免重复加载扩展报错。
2. 重启服务生效配置
修改完成后执行对应命令重启服务:
- 若用Apache运行项目:
sudo systemctl restart apache2 - 若用
artisan serve运行项目:直接重启终端的artisan进程即可
- 可执行
php -v确认Xdebug扩展正常加载,也可以输出phpinfo()网页确认web场景下Xdebug配置和上述配置一致。
3. 校验PhpStorm配置
- 进入
设置 > PHP > 调试,确认Xdebug调试端口设置为9003,勾选「可以接受外部连接」选项 - 进入
设置 > PHP > 服务器,添加你的Laravel项目对应的站点配置,必须配置路径映射:将本地项目根目录映射到服务器上Laravel项目的根目录(本地开发两边路径一致也需要显式勾选确认映射关系) - 点击PhpStorm右上角电话形状的「开始监听PHP调试连接」按钮,确保按钮处于点亮状态
4. 附加排查项
- 确认9003端口未被其他程序占用,可执行
sudo lsof -i:9003检查,无输出即为端口空闲 - 测试断点不要打在注释、空行或者Laravel框架入口文件前几行,优先打在路由闭包、控制器方法内验证
- 如果调试CLI场景的Artisan命令,需要确认CLI端的php.ini配置和上述一致,执行
php --ini可查看CLI加载的配置文件路径
内容的提问来源于stack exchange,提问作者sina
相关产品推荐
相关产品推荐

