温馨提示×

centos怎样调试phpstorm

小樊
44
2026-09-15 00:43:52
栏目: 编程语言

CentOS 上调试 PhpStorm 里的 PHP 程序,通常有两种常见方式:

  1. 本地调试(CentOS 就是开发机)
  2. 远程调试(CentOS 是服务器,Windows/macOS 跑 PhpStorm)

下面按最常见、最实用的方式说明。


一、CentOS 上安装 Xdebug

1. 安装 PHP 和开发包

sudo yum install php php-cli php-devel gcc make

2. 安装 Xdebug

推荐用 pecl 安装:

sudo yum install php-pear
sudo pecl install xdebug

安装完成后会看到类似:

You should add "zend_extension=/usr/lib64/php/modules/xdebug.so" to php.ini

3. 配置 php.ini

编辑 php.ini(位置可能是 /etc/php.ini/etc/php.d/xdebug.ini):

zend_extension=/usr/lib64/php/modules/xdebug.so

[Xdebug]
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.client_host = 127.0.0.1
xdebug.client_port = 9003
xdebug.idekey = PHPSTORM

重启 PHP:

sudo systemctl restart php-fpm
# 或
sudo systemctl restart httpd

二、PhpStorm 本地调试(CentOS 本机)

1. 设置 PHP 解释器

  • File → Settings → PHP
  • CLI Interpreter → 选择 CentOS 上的 php
  • 确认 Xdebug 已识别

2. 配置 Debug

  • Run → Edit Configurations
  • 新建 PHP ScriptPHP Web Page
  • IDE Key:PHPSTORM

3. 启动调试

  • 点击 电话图标(Start Listening)
  • 在代码里打断点
  • 运行脚本或访问网页

三、远程调试(CentOS 服务器 + 本地 PhpStorm)

CentOS(服务器端)

php.ini:

xdebug.mode = debug
xdebug.start_with_request = trigger
xdebug.client_host = 本地IP
xdebug.client_port = 9003
xdebug.idekey = PHPSTORM

本地 PhpStorm

  • Settings → PHP → Servers
    • 添加 CentOS 服务器
    • 映射项目路径(非常重要)
  • 使用浏览器插件(Xdebug Helper)
  • 访问页面自动进入断点

四、常见问题

1. 断点不生效

  • 检查 phpinfo() 是否有 Xdebug
  • 检查端口(默认 9003)
  • 检查路径映射是否一致

2. 防火墙问题

sudo firewall-cmd --add-port=9003/tcp --permanent
sudo firewall-cmd --reload

3. PHP Storm 不识别 Xdebug

  • 确认 zend_extension 路径正确
  • 确认 PHP 版本和 Xdebug 版本匹配

如果你愿意,可以告诉我:

  • 你是 本地还是远程
  • 用的是 PHP-FPM + Nginx / Apache
  • CentOS 版本(7 / 8 / Stream)

我可以给你一份 精准配置示例

0