在Ubuntu远程服务器上,通过终端安装Xdebug扩展(以Ubuntu 22.04+、PHP 8.1为例):
sudo apt update
sudo apt install php-xdebug
安装完成后,Xdebug会自动集成到PHP环境中,但需进一步配置。
编辑PHP配置文件(根据PHP运行模式选择对应文件,如Apache用apache2/php.ini,PHP-FPM用fpm/php.ini):
sudo nano /etc/php/8.1/apache2/php.ini
在文件末尾添加以下配置(关键参数说明见注释):
[xdebug]
zend_extension=xdebug.so # Xdebug扩展路径(Ubuntu自动填充)
xdebug.mode=debug # 启用调试模式
xdebug.client_host=192.168.1.100 # 本地机器(PhpStorm所在)的IP地址
xdebug.client_port=9003 # 调试端口(需与PhpStorm设置一致)
xdebug.start_with_request=yes # 自动启动调试(可选:trigger/yes)
xdebug.idekey=PHPSTORM # IDE标识(需与PhpStorm一致)
保存文件后,重启Apache服务使配置生效:
sudo systemctl restart apache2
注意:若使用PHP-FPM,需重启
php8.1-fpm服务;client_host需替换为本地机器的实际IP(可通过ip a命令查看)。
Ctrl+Alt+S)。+添加新服务器:
Remote Ubuntu Server)。192.168.1.100)。80或443)。Xdebug。OK保存。client_port一致的值(如9003)。/home/user/project映射到远程/var/www/html/project),避免路径错误。在浏览器中访问远程PHP应用,需在URL中添加Xdebug会话参数(以Chrome为例):
http://192.168.1.100/project/index.php?XDEBUG_SESSION_START=PHPSTORM
或安装Xdebug Helper浏览器插件(设置IDE Key为PHPSTORM),点击插件图标即可触发调试。
当代码执行到断点时,PhpStorm会自动切换至调试视图,可查看变量、调用堆栈、单步执行(F7/F8)等。
client_port(如9003)的入站连接;确认client_host为本地正确IP。9003端口被占用,修改php.ini中的client_port为其他端口(如9004),并同步更新PhpStorm设置。