Laravel本地Sail开发环境下Phpstorm+浏览器+Postman调试配置
查看Php是否启用Xdebug
如果是通过Docker容器sail up方式安装的项目会自动开启Xdebug,可略过此步骤
//进入shell
./vend/bin/sail shell
//查看是否启用Xdebug
php --version
如下显示Xdebug版本表示开启成功
配置Sail对Xdebug的支持
在项目根目录下找到.env文件增加如下配置,配置支持Windows跟Mac主机
如果是Linux请自前往此处查看
SAIL_XDEBUG_MODE=develop,debug
配置后需要先关闭docker容器再重新启动XDebug才会生效
//在sail shell中执行
sail stop
sail up -d
浏览器如何进行XDebug调试
下载浏览器扩展
为了方便在浏览器上调试,下载对应浏览器插件
这里以Chrome为例说明如何使用
- 从 Chrome 网上应用店安装适用于 Chrome 的 Xdebug 帮助程序扩展程序。
- 在 PhpStorm 中打开调试监听 (两种方式均可)
方式一 菜单运行->开始监听PHP调试连接
方式二 通过快捷工具栏上方监听按钮打开
-
从浏览器端启动连接。单击浏览器工具栏上的 Xdebug 帮助程序图标以启动调试、分析或跟踪会话
-
打开浏览器输入一个测试地址
-
这时候浏览器会进入等待状态,Phpstorm监听到来自XDebug的连接会自动弹出一个默认的服务器连接,在项目列表中选择对应项目即可
-
设置服务器后,再次刷新刚才的请求
如果Phpstorm默认没有找到映射路径 那么在调试窗口出现下面错误提示
或者通知服务会弹窗提示映射问题
7. 打开设置找到Php->服务 勾选路径映射 在项目文件路径处填上对应服务器根目录地址
如果不清楚项目在Linux子系统上什么位置
通过sail shell
进入项目后查看
红色标记处就是项目根目录
- 在测试方法上打上断点,再次刷新浏览器即可进入调试断点
Postman如何进行XDebug调试
对Postman的Headers头部增加XDebug配置以便Phpstorm服务器能够识别
- 选择请求下Headers菜单->点击Presets->选择Manage Presets
- 在弹出框中增加一键值对
- 给Header键值对取个名称 ,然后输入
Cookie : XDEBUG_SESSION=PHPSTROM
4. 在请求Headers菜单下点击Presets选择XDebug则会自动追加在你的请求头下面
5.点击Send则会进入你的调试断点处