在Debian服务器上,通过包管理器安装Xdebug(推荐)或手动编译安装:
sudo apt-get update
sudo apt-get install php-xdebug # 自动适配当前PHP版本
安装完成后,确认Xdebug是否加载:
php -m | grep xdebug # 应输出"xdebug"
编辑PHP配置文件(根据PHP运行模式选择路径,如Apache用apache2/php.ini,PHP-FPM用fpm/php.ini):
sudo nano /etc/php/8.2/apache2/php.ini # 示例路径,需替换为实际版本
在文件末尾添加以下配置(关键参数说明见下方):
[xdebug]
zend_extension=xdebug.so # Xdebug扩展路径(通常无需手动指定)
xdebug.mode=debug # 启用调试模式
xdebug.client_host=192.168.1.100 # 本地机器(PhpStorm所在)IP地址
xdebug.client_port=9003 # 调试端口(默认9003,需与PhpStorm一致)
xdebug.start_with_request=yes # 自动启动调试(触发请求时激活)
xdebug.idekey=PHPSTORM # IDE标识,需与PhpStorm设置一致
注意:若使用SSH反向隧道(可选,解决网络隔离问题),可将
client_host设为localhost,并通过SSH隧道转发端口(详见后续可选步骤)。
使Xdebug配置生效:
sudo systemctl restart apache2 # Apache用户
# 或
sudo systemctl restart php8.2-fpm # PHP-FPM用户
File > Settings > PHP。CLI Interpreter右侧齿轮图标,选择Add。SSH Interpreter,输入远程服务器信息:
Password或Key pair(推荐密钥)...选择远程PHP可执行文件(路径如/usr/bin/php)。Finish保存。File > Settings > PHP > Servers。+添加新服务器,填写:
Debian-Remote)example.com或192.168.1.100)80/443)XdebugUse path mappings,将本地项目目录映射到远程目录(如本地/home/user/project → 远程/var/www/html/project)。File > Settings > PHP > Debug。Debug port设置为9003(与php.ini中的client_port一致)。Shift+F9)启动监听。http://example.com),触发断点。若本地机器无法直接访问远程服务器,可通过SSH隧道转发Xdebug端口:
ssh -R 9003:localhost:9003 user@remote_server_ip
此时,php.ini中的client_host需改为localhost,PhpStorm仍监听9003端口。
9003端口(sudo ufw allow 9003/tcp)。php -m | grep xdebug确认扩展是否加载,未加载则检查php.ini路径是否正确。以上步骤完成后,即可在Debian环境下使用PhpStorm进行远程调试。如需更详细指导,可参考PhpStorm官方文档远程调试配置。