phpstorm怎样在Ubuntu上部署代码
作者:RiverSoul
时间:2026-07-03
浏览:0
在Ubuntu上使用PhpStorm部署代码主要有两种方式:SFTP自动同步适合传统云主机,配置简单且支持自动上传;远程解释器调试适合统一运行环境与本地断点调试,需安装PHP及Xdebug并配置SSH连接。部署时推荐使用SSH密钥认证,注意目录权限与防火墙设置。
在 Ubuntu 上使用 PhpStorm 部署代码,说起来无非就是几种路径:SFTP 自动同步、远程解释器调试、或者 Docker 容器化。但到底选哪个,得看你的项目规模和团队习惯。下面直接给出最实用的方案,从配置到排障一步到位。

一 部署方式与选择
别纠结,按场景对号入座:
- 持续交付 / 团队协作:用 SFTP/FTPS 自动同步,或者 rsync over SSH,配合 Git 版本控制,省心又靠谱。
- 容器化 / 一致性环境:直接走 Docker 镜像构建与部署,生产环境的首选。
- 远程解释器 + 本地运行:在 Ubuntu 上配置远程 PHP 解释器,本地写好代码直接运行和调试,最后再把产物同步到服务器。
二 方案一:SFTP 自动同步到 Ubuntu 服务器(最常用)
这是绝大多数人的日常操作,简单直接。
- 前置准备
- Ubuntu 上开启 SSH 服务:
sudo systemctl enable --now ssh - 强烈建议创建一个专用部署用户,并配置 SSH 密钥登录——密码登录在公网环境下风险太大。
- Ubuntu 上开启 SSH 服务:
- PhpStorm 配置步骤
- 打开 Tools → Deployment → Configuration,点击 + 新建服务器,类型选 SFTP。
- 填写 Host(服务器 IP 或域名)、Port 22、User、认证方式(推荐 Key pair),然后测试连接。
- 进入 Mappings 标签页,设置:
- Local path:本地项目根目录
- Deployment path on server:服务器上的项目路径,比如
/var/www/html/project
- 在 Deployment → Options 中勾选 Upload changed files automatically to the default server,这样保存文件就会自动上传。
- 如果需要首次全量同步,用 Tools → Deployment → Sync with Deployed…
- 安全与网络建议
- 优先使用 SSH 密钥替代密码;必要时配置 UFW 只放行 22 端口;如果服务器暴露在公网,最好限制来源 IP。
- 适用场景
- 传统虚拟机或云主机部署、快速交付、不涉及容器化的项目,这套方案最趁手。
三 方案二:远程解释器与本地运行调试
适合团队需要统一运行环境、同时又要本地调试的场景。
- 在 Ubuntu 上准备环境
- 安装 PHP:
sudo apt update && sudo apt install php php-cli - 安装 Xdebug 3 调试扩展:
sudo apt install php-xdebug
- 安装 PHP:
- PhpStorm 配置步骤
- 打开 File → Settings → Languages & Frameworks → PHP,点击 … → Add,选择 Remote (SSH)。
- 填写 Host、Port 22、User,选择 Key pair 或密码,指定远程 PHP 可执行文件路径(可用
which php查看),测试连接。 - 打开 Run → Edit Configurations,新建 PHP Web Page 或 PHP Built-in Web Server:
- 选择刚才配置的远程解释器
- 配置 Server(Name、Host、Port、Debugger 选 Xdebug)
- 设置 Start URL(例如
/index.php)
- 在浏览器中访问对应地址,点击调试工具栏的绿色虫子图标,开始断点调试。
- 说明
- 这种方式是在 Ubuntu 上实际运行代码并进行调试,适合团队需要一致运行环境的项目。静态文件或产物可以按需用 rsync/scp 同步到 Nginx/Apache 目录。
四 常见问题与排查要点
几个容易被卡住的点,提前说清楚。
- 无法连接 SFTP
- 先检查 SSH 服务是否运行:
sudo systemctl status ssh;端口 22 是否放行;用户名和密钥是否正确。云服务器的话别忘了检查安全组是否开放了 22 端口。
- 先检查 SSH 服务是否运行:
- 自动上传不生效
- 确认已在 Deployment 配置中选中 Default server,并且 Tools → Deployment → Automatic Upload 处于勾选状态。再检查 Mappings 里的路径映射是否准确。
- 权限被拒绝
- 确保部署用户对目标目录(比如
/var/www/html)拥有写权限:sudo chown -R $USER:$USER /var/www/html && sudo chmod -R 755 /var/www/html
- 确保部署用户对目标目录(比如
- Xdebug 调试连不上
- 确认已安装 php-xdebug,并且在 PhpStorm 的 Servers 里正确配置了 Host、Port 和 Debugger。浏览器访问时记得带上
XDEBUG_SESSION_START参数,或者用 Bookmarkslet 触发。
- 确认已安装 php-xdebug,并且在 PhpStorm 的 Servers 里正确配置了 Host、Port 和 Debugger。浏览器访问时记得带上
- 同步很慢或中断
- 优先使用 SSH 密钥来减少连接延迟。另外,在 Deployment 的 Excluded Paths 中排除
vendor/、日志、缓存等目录,可以大幅提升速度。
- 优先使用 SSH 密钥来减少连接延迟。另外,在 Deployment 的 Excluded Paths 中排除
五 快速命令清单(便于复制执行)
- Ubuntu 开启 SSH
sudo systemctl enable --now ssh
- 安装 PHP 与 Xdebug
sudo apt update && sudo apt install php php-cli php-xdebug
- 查看 PHP 路径
which php
- 部署用户赋权
sudo chown -R $USER:$USER /var/www/html && sudo chmod -R 755 /var/www/html
- 测试 SFTP 连接(命令行)
sftp -P 22 user@your_server_ip
以上步骤覆盖了 Ubuntu 上使用 PhpStorm 进行 SFTP 自动部署与远程解释器调试的两种主流做法。根据你的项目规模与团队规范,选择其一或组合使用即可。
作者最新文章
微软推出Project Zenith:面向Windows 11开发者的AI硬件加速方案
2026-09-08 18:15
打破流量垄断,让平台经济释放普惠红利
2026-09-08 18:07
Arm AGI CPU详解:136核Neoverse V3,3nm双芯粒架构与AI数据中心部署
2026-09-08 17:18
Windows安装Docker教程:启用WSL2并运行第一个容器验证
2026-09-04 09:26
PDF转Word操作指南:在线与本地转换方法及格式检查
2026-09-03 16:03
上一篇:
phpstorm怎样优化Ubuntu性能
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































