PHPStorm在Ubuntu上如何集成Xdebug
PHPStorm在Ubuntu上集成Xdebug的完整步骤
1. 安装Xdebug扩展
首先确保Ubuntu系统已安装PHP基础环境(如php-cli、php-fpm或php-apache),然后通过包管理器安装Xdebug:
sudo apt update
sudo apt install php-xdebug
安装完成后,Xdebug会自动添加至PHP扩展目录(路径可通过php -i | grep extension_dir查看)。
2. 配置php.ini文件
找到当前PHP版本的php.ini文件(路径可通过php -i | grep php.ini获取,如/etc/php/8.2/cli/php.ini或/etc/php/8.2/fpm/php.ini),在文件末尾添加以下配置:
[Xdebug]
zend_extension=xdebug.so ;
加载Xdebug扩展(Linux下无需指定完整路径)
xdebug.mode=debug ;
启用调试模式(必填)
xdebug.client_host=127.0.0.1 ;
客户端IP(IDE所在机器,本地为127.0.0.1)
xdebug.client_port=9003 ;
调试端口(默认9003,需与PHPStorm一致)
xdebug.start_with_request=yes ;
自动启动调试(可选:yes/trigger/never)
注意:若使用xdebug.start_with_request=trigger,需通过URL参数?XDEBUG_TRIGGER=1触发调试。
3. 重启Web服务器
配置生效后,需重启PHP和Web服务器以加载Xdebug:
- PHP-FPM(常用):
sudo systemctl restart php8.2-fpm ; 替换为你的PHP版本(如8.1、8.0) - Apache:
sudo systemctl restart apache2 - Nginx:
sudo systemctl restart nginx
4. 验证Xdebug安装
创建info.php文件(内容为<
?php phpinfo();
?>
),上传至Web服务器并通过浏览器访问。在页面中搜索“Xdebug”,若看到Xdebug版本及相关配置(如client_host、client_port),则说明安装成功。
5. 配置PHPStorm
5.1 添加PHP解释器
打开PHPStorm,进入File >
Settings >
PHP,点击“…”添加本地或远程PHP解释器(确保解释器路径正确,如/usr/bin/php)。
5.2 配置服务器映射
进入File >
Settings >
PHP >
Servers,点击“+”添加新服务器:
- Name:自定义服务器名称(如“Local Server”);
- Host:
localhost(或服务器IP); - Port:
80(HTTP)或443(HTTPS); - 勾选“Use path mappings”,将项目远程路径(如
/var/www/html/myproject)映射至本地路径(如/home/user/projects/myproject)。
5.3 设置调试端口
进入File >
Settings >
PHP >
Debug,确认“Debug port”设置为9003(与php.ini中的client_port一致)。
6. 启动调试会话
6.1 设置断点
在PHP代码行号左侧点击,添加红色断点(如index.php的第10行)。
6.2 开启监听
点击PHPStorm右上角的电话图标(“Start Listening for PHP Debug Connections”),进入调试等待状态。
6.3 触发调试
- 自动触发(
start_with_request=yes):直接在浏览器中访问项目URL(如http://localhost/myproject),代码执行到断点时会自动暂停。 - 手动触发(
start_with_request=trigger):在URL后添加?XDEBUG_TRIGGER=1(如http://localhost/myproject?XDEBUG_TRIGGER=1),触发调试会话。
7. 调试操作
当代码暂停在断点时,可使用PHPStorm调试工具栏的按钮进行操作:
- Step Over(F8):执行当前行,跳至下一行;
- Step Into(F7):进入当前行的函数/方法内部;
- Step Out(Shift+F8):跳出当前函数/方法;
- Resume Program(F9):继续执行至下一个断点或结束;
- View Variables:查看当前作用域的变量值;
- Evaluate Expression:计算表达式结果。
常见问题排查
- 端口冲突:若
9003端口被占用,可修改php.ini中的client_port(如9004),并同步更新PHPStorm的“Debug port”。 - 路径映射错误:确保服务器配置中的“Path mappings”正确,否则无法准确定位断点。
- Xdebug未加载:检查
php.ini中的zend_extension路径是否正确,或通过php -m | grep xdebug确认扩展是否加载。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHPStorm在Ubuntu上如何集成Xdebug
本文地址: https://pptw.com/jishu/742819.html
