当前位置:

首页 > 编程开发 > PHPStorm Ubuntu版如何配置Xdebug

PHPStorm Ubuntu版如何配置Xdebug

Ubuntu系统下配置PHPStorm与Xdebug需依次安装Xdebug扩展、编辑php.ini设置调试模式与端口、重启Web服务器,再在PHPStorm中配置PHP解释器、服务器及路径映射,最后创建调试配置并测试,注意端口与IDEkey需一致,路径映射是关键。

PHPStorm Ubuntu版配置Xdebug步骤

PHPStorm Ubuntu版如何配置Xdebug

配置Xdebug,Ubuntu + PHPStorm这套组合是很多开发者的标配。但说实话,配置过程里的坑确实不少,尤其是路径映射和端口设置,稍不留神就容易翻车。下面直接上干货,把整个流程拆解清楚。

1. 安装Xdebug扩展

第一步,先把Xdebug扩展装上。前提是系统里已经装好了PHP,用php -v确认一下版本号。然后执行:

sudo apt-get update
sudo apt-get install php-xdebug
# 自动匹配当前PHP版本

如果系统里跑的是特定PHP版本,比如7.4,那就手动指定一下:

sudo apt-get install php7.4-xdebug

2. 配置php.ini文件

接着是配置php.ini。去哪里找这个文件?用php --ini命令就能看到路径。通常来说,CLI模式的配置文件在/etc/php/{php_version}/cli/php.ini,而FPM模式(生产环境常用)在/etc/php/{php_version}/fpm/php.ini,比如/etc/php/8.1/fpm/php.ini。

用文本编辑器打开,在末尾加上这段配置:

[Xdebug]
zend_extension=xdebug.so
# Ubuntu下扩展名为.so,无需手动指定路径
xdebug.mode=debug
# 启用调试模式
xdebug.client_host=127.0.0.1
# 调试客户端地址(本地为127.0.0.1)
xdebug.client_port=9003
# 调试端口(Xdebug 3默认9003,需与PHPStorm一致)
xdebug.start_with_request=yes
# 自动启动调试(可选:trigger/yes)
xdebug.idekey=PHPSTORM
# IDE标识(需与PHPStorm设置一致)

保存退出——Ctrl+O,Enter,Ctrl+X,搞定。

3. 重启Web服务器

配置写完了,重启一下服务才能生效。根据你用的Web服务器,选一个执行:

  • PHP-FPM(Ubuntu下最常见):
    sudo systemctl restart php{php_version}-fpm
    # 如php8.1-fpm
  • Apache:
    sudo systemctl restart apache2
  • Nginx:
    sudo systemctl restart nginx

4. 配置PHPStorm

服务端搞定了,该轮到PHPStorm登场了。这部分分成三步走。

4.1 设置PHP解释器

  1. 打开PHPStorm,进入File > Settings(macOS上则是PHPStorm > Preferences)。
  2. 导航到Languages & Frameworks > PHP,点击Interpreter右侧的齿轮图标,选择Add。
  3. 选择System Interpreter,找到Ubuntu下的PHP路径(一般就是/usr/bin/php),点OK确认。

4.2 配置Servers

  1. 进入Languages & Frameworks > PHP > Servers,点击+添加新服务器。
  2. 输入服务器名称(比如Local),Host填localhost,Port填你的Web服务器端口(默认80,如果是HTTPS则443)。
  3. 勾选Use path mappings(路径映射,这一步很关键,后面会详细说),点OK。

4.3 配置Debug设置

  1. 进入Languages & Frameworks > PHP > Debug,确保Xdebug部分的Debug port设置为9003——这个必须和php.ini里的client_port一致。
  2. 点击DBGp Proxy标签,设置IDE key为PHPSTORM,同样要和php.ini里的idekey保持一致。

5. 设置路径映射(关键步骤)

这一步是很多新手栽跟头的地方。路径映射的目的,是把项目在本地电脑上的路径,和它在服务器上的路径关联起来。否则,断点根本不会命中。

  1. 在Servers配置中,选中刚才添加的服务器,点击Paths标签。
  2. 点击+添加映射:
    • Local Path:选择项目在本地电脑上的根目录(比如/home/user/project)。
    • Remote Path:输入项目在服务器上的路径(比如/var/www/html/project)。
  3. 点一下Validate验证配置,如果显示“Valid”(所有对勾都亮),那就稳了。

6. 创建调试配置

  1. 点击PHPStorm顶部菜单Run > Edit Configurations。
  2. 点击+添加PHP Web Page配置,输入名称(比如Xdebug Debug)。
  3. 选择刚配置好的服务器(比如Local),设置Start URL为要调试的页面(比如/index.php)。
  4. 点击OK保存。

7. 测试配置

配置有没有到位,得拉出来遛遛。

  1. 创建一个info.php文件,内容就写,把它放到服务器上。
  2. 在浏览器里访问http://localhost/info.php,搜索“Xdebug”这个关键词,确认Xdebug已经启用。
  3. 回到PHPStorm,点击顶部工具栏的绿色虫子图标(或者按Shift+F9)启动调试。
  4. 在info.php里随便找个位置设置断点(行号左侧点一下),然后刷新浏览器。如果断点成功命中,进入调试模式,那就说明大功告成了。

常见问题排查

真遇到问题也别慌,常见的坑其实就那几个:

  • 断点未命中:检查php.ini里xdebug.start_with_request是不是yes,client_host是不是127.0.0.1,端口号和PHPStorm里设置的是否一致。路径映射有没有配错,再仔细核对一遍。
  • Xdebug未加载:运行php -m | grep xdebug,如果没输出,说明扩展根本没加载。检查一下zend_extension的路径对不对——Ubuntu下通常是xdebug.so,不需要手动指定完整路径。
  • 端口冲突:如果9003端口被别的程序占用了,可以改个端口号。比如把php.ini里的client_port改成9004,同时把PHPStorm的Debug port也改成9004,两边保持一致就行。
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
编程开发 Ubuntu
相关文章 更多
ServBay安装配置详细教程与操作指南
ServBay安装配置详细教程与操作指南

新手入门 ServBay 本地开发环境,详解安装包下载、Dashboard 状态监控、Packages 组件安装、Services 服务控制及 Websites 项目配置。掌握 .servbay.config 版本管理与日志排查技巧,快速搭建稳定的 PHP、Node.js 等多语言开发环境。

codekit环境配置指南从安装到环境搭建完整教程
codekit环境配置指南从安装到环境搭建完整教程

详解 CodeKit 在 macOS 下的安装步骤、项目导入方法、Sass与JavaScript编译设置及浏览器自动刷新功能,助您快速搭建高效的前端开发环境。

codex安装windows 命令行完整操作教程
codex安装windows 命令行完整操作教程

详解Windows环境下安装OpenAI Codex CLI的步骤,包括WSL环境检查、Node.js/npm配置、npm全局安装命令及首次启动验证,适合开发者快速上手。

NativeRest环境配置要求与完整操作教程
NativeRest环境配置要求与完整操作教程

学习如何配置 NativeRest REST API 客户端。涵盖 Windows/macOS/Linux 安装后的工作区创建、环境变量管理、请求编辑及响应查看步骤,帮助开发者快速完成基础环境搭建与连通性测试。

CSS设置透明度的注意事项有哪些?opacity属性详解
CSS设置透明度的注意事项有哪些?opacity属性详解

深入解析CSS中设置透明度的核心属性opacity,剖析子元素继承、事件穿透、层叠上下文等关键注意事项,并提供与rgba、hsla的实用选型对比。

flutter页面传值到后台的方法及示例代码
flutter页面传值到后台的方法及示例代码

flutter页面传值到后台的完整实现方法及示例代码,帮助读者快速掌握相关技术要点。

Java 8至21新特性代码写法对比:Lambda、Record与Switch
Java 8至21新特性代码写法对比:Lambda、Record与Switch

本文通过具体的旧版与新版代码对比,详细剖析Java 8引入的Lambda表达式、Java 14/16引入的Record类,以及Java 12至21逐步演进完善的Switch表达式与模式匹配,展示代码简化路径与避坑要点。

AI智能体开发培训课程学什么及实战内容介绍
AI智能体开发培训课程学什么及实战内容介绍

系统梳理AI智能体开发培训的核心知识模块、技术栈选型与典型实战项目,解析低代码平台与纯代码框架的差异,提供从零构建可落地智能体的完整学习与实施路径。

Java子类未实现抽象方法编译错误修复指南
Java子类未实现抽象方法编译错误修复指南

针对Java开发中常见的“子类未实现抽象方法”编译错误,深入分析报错原因,提供重写实现、声明抽象子类两种标准修复路径,并总结参数签名、访问修饰符等典型避坑要点。

解决PHP递归报错:max_nesting_level限制与内存溢出处理
解决PHP递归报错:max_nesting_level限制与内存溢出处理

遇到PHP递归报错时,不要盲目调大max_nesting_level。本文教你区分Xdebug限制、内存耗尽和正则递归错误,提供代码级的终止条件优化与迭代替代方案,彻底解决栈溢出问题。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

PDF教程
PDF教程

正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

Mac软件 更多
Shapr3D macOS版
Shapr3D macOS版
Mac

Shapr3D是一款面向工业设计、机械工程、建筑概念和三维打印工作流的CAD软件。Mac版采用Parasolid建模内核,支持草图约束、实体建模、工程图、可视化渲染及常见CAD格式交换,并可通过账户在多台设备之间同步项目。

REAPER macOS版
REAPER macOS版
Mac

REAPER是Cockos开发的数字音频工作站,提供多轨音频与MIDI录制、剪辑、处理、混音和母带制作工具。Mac版兼容Intel与Apple芯片,支持AU、VST、VST3、CLAP等插件格式,并提供高度可定制的工作流程。

Ableton Live macOS版
Ableton Live macOS版
Mac

Ableton Live 是面向音乐制作人与现场表演者的数字音频工作站,提供编曲视图、独具特色的现场视图、音频录制、MIDI创作、实时变速、乐器及效果器。Mac版原生支持Apple芯片,并可连接音频接口、MIDI控制器和第三方插件。

WINDOWS 更多
3dmax(3ds max)
3dmax(3ds max)
Windows

Autodesk 3ds Max 是一款专业的三维建模、动画与渲染软件,广泛应用于建筑可视化、游戏开发、影视动画、广告设计和产品展示等领域。

photoshop
photoshop
Windows、macOS 、 iPad

Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

Blender
Blender
Windows、macOS 和 Linux

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。