首先确保CentOS系统已安装PHP及开发工具,然后通过以下命令安装Xdebug:
# 安装必要依赖
sudo yum install gcc php-devel php-pear autoconf -y
# 下载并编译Xdebug(以最新稳定版为例,需替换为实际版本)
wget https://xdebug.org/files/xdebug-3.3.0.tgz
tar xvf xdebug-3.3.0.tgz
cd xdebug-3.3.0
phpize
./configure --enable-xdebug
make
sudo cp modules/xdebug.so /usr/lib64/php/modules/xdebug.so
编辑php.ini文件(路径可通过php --ini确认,通常为/etc/php.ini或/etc/php/8.1/cli/php.ini),添加以下配置:
[xdebug]
zend_extension=/usr/lib64/php/modules/xdebug.so
xdebug.mode=debug
xdebug.client_host=127.0.0.1 # 本地监听地址(远程调试时需改为本地计算机IP)
xdebug.client_port=9003 # 调试端口(需与PhpStorm配置一致)
xdebug.start_with_request=yes # 自动启动调试
xdebug.idekey=PHPSTORM # IDE标识
重启PHP服务使配置生效:
sudo systemctl restart php-fpm # 若使用Apache,替换为sudo systemctl restart httpd
File > Settings > Languages & Frameworks > PHP。CLI Interpreter右侧齿轮图标,选择Add。Remote标签,输入远程服务器信息(名称自定义,如“CentOS PHP”),选择SSH Credentials方式连接(输入服务器IP、用户名、密码或密钥)。Interpreter栏填写远程PHP路径(如/usr/bin/php),点击Test Connection验证连接,确认后保存。File > Settings > Languages & Frameworks > PHP > Servers,点击+添加服务器。Host填写服务器IP或域名,Port填写Web端口(如80或443),勾选Use path mappings。Local path(本地项目路径)和Remote path(远程项目路径)之间建立映射(如本地/home/user/project对应远程/var/www/html/project)。进入Run > Edit Configurations,点击+添加PHP Web Page配置:
Start URL填写项目入口(如http://your-server-ip/);Debugger选择Xdebug;Validate确认配置无误。http://your-server-ip/?XDEBUG_SESSION_START=PHPSTORM;当代码执行到断点时,PhpStorm会自动切换至调试视图,可通过以下工具栏按钮控制流程:
xdebug.client_port(如9003)未被其他程序占用,若修改端口需同步更新PhpStorm配置;xdebug.client_port端口(如sudo firewall-cmd --add-port=9003/tcp --permanent && sudo firewall-cmd --reload);Local path与Remote path必须正确对应,否则无法定位代码;xdebug.mode替代xdebug.remote_enable)。