1. 准备工作
确保远程Debian服务器已安装PHP(sudo apt install php php-cli)和SSH服务(默认开启,可通过sudo systemctl status ssh检查)。本地计算机需安装PHPStorm(建议使用最新稳定版)。
2. 配置远程服务器连接(Deployment)
打开PHPStorm,进入File > Settings > Build, Execution, Deployment > Deployment,点击+添加新配置,选择SFTP类型(推荐,安全且常用)。
SFTP Host(IP或域名)、Port(默认22)、User name(SSH登录用户名);选择身份验证方式(密码或密钥对,密钥对更安全,需将公钥添加到服务器~/.ssh/authorized_keys文件中)。Test SFTP connection验证连接是否成功(显示绿色勾选框即为成功),确认后点击OK保存配置。Options标签下勾选Automatic Upload,实现本地保存文件时自动同步到远程服务器,避免手动操作。3. 设置远程PHP解释器
进入File > Settings > Languages & Frameworks > PHP,点击右上角齿轮图标,选择Add。
SSH Interpreter,PHPStorm会自动关联之前配置的Deployment服务器(若未关联,需手动输入服务器信息)。Interpreter字段显示的路径(通常为/usr/bin/php,可通过which php命令在服务器上查看),确保PHPStorm能识别远程PHP环境。Finish,PHPStorm将使用远程PHP解释器执行代码(如运行脚本、安装Composer依赖)。4. 配置路径映射(关键步骤)
路径映射确保本地文件与远程文件一一对应,是调试和文件访问的基础。
进入Deployment设置的Mappings标签,填写以下三项:
http://your-server-ip/project-folder,可选,用于浏览器预览);/var/www/html/my-project,需与Deployment配置中的Root path一致);/Users/your-name/projects/my-project)。5. 配置Xdebug远程调试
Xdebug是PHP远程调试的核心工具,需在服务器和PHPStorm中均进行配置。
php --ini查找路径,如/etc/php/8.2/cli/php.ini)中添加以下内容:zend_extension=xdebug.so # 加载Xdebug扩展(模块名可能为xdebug.so或php_xdebug.dll,取决于系统)
xdebug.mode=debug # 开启调试模式
xdebug.start_with_request=yes # 每次请求都启动调试(或设为"trigger",通过浏览器参数触发)
xdebug.client_host=你的本地IP # 本地计算机的IP地址(需确保服务器能访问,可通过`ip a`查看本地IP)
xdebug.client_port=9003 # 调试端口(默认9003,需与PHPStorm设置一致)
保存后重启PHP服务(如sudo systemctl restart php8.2-fpm或sudo systemctl restart apache2)。电话图标(Start Listening for PHP Debug Connections),变为绿色表示正在监听。XDEBUG_SESSION_START=PHPSTORM参数(如http://your-server-ip/project-page?XDEBUG_SESSION_START=PHPSTORM),或使用浏览器插件(如Xdebug Helper)一键开启调试。6. 测试远程开发流程
Run > Edit Configurations添加PHP Script配置,选择远程解释器,即可运行远程服务器上的PHP脚本。注意事项
sudo ufw allow 22、sudo ufw allow 9003)。id_rsa)已添加到~/.ssh/id_rsa,且服务器authorized_keys文件权限为600。xdebug.client_host是否设置为本地IP(而非localhost),以及服务器是否能访问该IP。