Debian 上 PhpStorm 远程调试 PHP 的完整步骤
一 环境准备与版本选择
二 在 Debian 服务器安装并配置 Xdebug
sudo apt-get update
sudo apt-get install php-xdebug
zend_extension=xdebug.so
xdebug.mode=debug
xdebug.client_host=YOUR_PHPSTORM_HOST_IP ; 你的 PhpStorm 所在机器的可达 IP
xdebug.client_port=9003
xdebug.start_with_request=yes ; 每次请求都尝试连接调试器(也可用 trigger)
; 可选:便于识别会话
xdebug.idekey=PHPSTORM
说明:
xdebug.start_with_request=trigger 并在请求中携带触发参数。# Apache
sudo systemctl restart apache2
# 或 PHP-FPM
sudo systemctl restart php8.2-fpm
# Nginx 搭配 FPM 时通常也需要重启 php-fpm
sudo systemctl restart nginx
php -v | grep -i xdebug
php -i | grep -E 'xdebug.mode|xdebug.client_host|xdebug.client_port|xdebug.idekey'
看到 Xdebug 已启用且参数正确即可。三 在 PhpStorm 中配置远程调试
四 触发调试与常见问题排查
xdebug.start_with_request=yes 时,直接访问页面即可进入断点。xdebug.start_with_request=trigger,在 URL 附加参数:http://your-domain/test.php?XDEBUG_SESSION_START=PHPSTORM
或在浏览器安装 Xdebug helper 扩展并设置为 IDE key PHPSTORM。# 本地端口 9003 -> 服务器 9003
ssh -R 9003:127.0.0.1:9003 user@your-server
并在服务器 xdebug.ini 中保持 xdebug.client_host=127.0.0.1。sudo ss -lntp | grep 9003
# 更换 xdebug.client_port 与 PhpStorm Debug port 为未占用端口(如 9004)
xdebug.log=/var/log/php-xdebug.log 后重启服务)。php -v 与 php -i | grep xdebug 确认 Xdebug 已加载且版本为 3.x;若不匹配,重新安装对应版本。五 安全建议
xdebug.start_with_request=trigger 并限制来源 IP。