安装 Xdebug
xdebug 版本需要与php匹配;匹配地址 :
👉 匹配地址
👉 查看所有版本
注: 不确定xdebug版本的,把 phpinfo() 网页源代码全部复制到 https://xdebug.org/wizard 页面的文本框中,点击Analyse my phpinfo() output 跳转到下载配置页面,按页面提示流程安装即可。如下图:
注意: 可能会遇到 mkdir() 目录失败; 解决办法: 手动创建该目录后再进行安装即可.
配置php.ini
- 找到php.ini文件
{14:39}~ ➭ php -i |grep php.ini
Configuration File (php.ini) Path => /usr/local/etc/php/7.2
Loaded Configuration File => /usr/local/etc/php/7.2/php.ini
{14:39}~ ➭
{14:39}~ ➭ vim /usr/local/etc/php/7.2/php.ini
- .添加 Xdebug 配置
#查找 xdebug.so 路径:
{14:52}~ ➭ sudo find / -name xdebug.so
为什么不选用xdebug官网上的配置? 原因:它只保证配置好xdebug,但不能与phpstorm进行配置,正确的配置方法,还要在php.ini的xdebug模块下添加以下代码。
[xdebug]
zend_extension = "/usr/local/lib/php/pecl/20170718/xdebug.so" #配置xdebug (xdebug.so路径)
xdebug.remote_enable = On #是否运行远程终端,必须开启
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000 #这个端口号要和phpstorm中的保持一致,示例的端口是9001
xdebug.idekey = PHPSTORM #调试器关键字
- 重启php-fpm服务
sudo killall php-fpm #关闭php-fpm
sudo php-fpm #开启php-fpm
-
查看是否安装配置成功
方法一:
{15:06}~ ➭ php -m | grep "Xdebug"
Xdebug
方法二:
有一点要注意,当出现
Cannot load Xdebug - it was already loaded
时,查看php.ini文件中存在的zend_extension="xdebug.so"
然后将其注释掉即可;
OK 👇
配置phpStorm支持Xdebug
- 点击左上角phpstorm,选择preferences。
- 配置PHP下的Debug
- 配置Debug下的DBGp Proxy
- 配置PHP下的Servers
- 点击phpstorm右上角的三角形,选择Edit Configurations,配置服务器信息;
- 新增一个 PHP Web Page ( 使用此对话框可配置远程服务器上PHP应用程序的运行和调试)
- 点击phpstorm右上角的三角形,选择刚刚创建的PHP Web Page
配置Postman
请求头中增加 Cookie; 值为 XDEBUG_SESSION=PHPSTORM
(1)
(2)
查看效果