在Debian服务器上,首先安装PHP及Xdebug扩展(根据PHP版本调整包名,如php8.2-xdebug):
sudo apt update
sudo apt install php php-cli php-fpm php-xdebug
安装完成后,Xdebug会自动加载,但需通过配置文件确认其状态。
编辑PHP配置文件(根据PHP运行模式选择路径,如FPM用/etc/php/8.2/fpm/php.ini,CLI用/etc/php/8.2/cli/php.ini),在文件末尾添加以下配置:
[xdebug]
zend_extension=xdebug.so ; Xdebug扩展路径(通常自动检测)
xdebug.mode=debug ; 启用调试模式
xdebug.client_host=192.168.1.100 ; PHPStorm所在主机的IP地址(本地可填127.0.0.1)
xdebug.client_port=9003 ; 调试端口(默认9003,需与PHPStorm一致)
xdebug.idekey=PHPSTORM ; IDE标识,需与PHPStorm配置一致
xdebug.start_with_request=yes ; 自动启动调试(可选:trigger/yes)
注意:若使用xdebug.remote_*旧参数(如Xdebug 2.x),需替换为xdebug.*新参数(Xdebug 3.x+)。
保存配置后,重启PHP-FPM(或Apache/Nginx)使更改生效:
sudo systemctl restart php8.2-fpm ; 根据实际PHP版本调整
File > Settings > Languages & Frameworks > PHP > Servers。+号添加新服务器,填写:
Debian-Remote);192.168.1.100);80/443);Use path mappings,将远程项目路径(如/var/www/html/myproject)映射到本地项目路径(如/home/user/myproject)。File > Settings > Languages & Frameworks > PHP > Debug。Debug port中输入9003(与php.ini中的xdebug.client_port一致)。Can accept external connections(允许外部连接,远程调试必需)。Shift+F9)启动调试监听。http://192.168.1.100/myproject/index.php),触发断点。9003端口被占用,修改php.ini和PHPStorm中的client_port为其他端口(如9004),并重启服务。ufw):sudo ufw allow 9003/tcp
sudo ufw reload
Servers配置中的本地与远程路径一一对应,否则无法正确显示变量和代码。php -m | grep xdebug检查扩展是否加载,未加载则确认zend_extension路径正确。通过以上步骤,即可在Debian系统中使用PHPStorm完成远程调试。调试过程中,PHPStorm会实时同步远程代码状态,方便排查问题。