sublime text 本身不支持 ftp 连接,需通过 sftp 插件实现;配置时须确保 ssh 权限、正确填写 host 和 remote_path、优先使用 ssh_key_file 而非明文密码,并注意私钥格式与路径必须为绝对路径。

Sublime Text 本身不支持 FTP 连接
Sublime Text 是个纯本地编辑器,没有内置 FTP/SFTP 功能。所谓“Sublime 连接 FTP”,实际是靠第三方插件实现的,最常用的是 SFTP 插件(注意不是 FTP,后者早已停更且不兼容 Sublime Text 3/4)。直接搜“Sublime FTP 教程”容易装错插件,导致配置失败或连不上。
实操建议:
- 用 Package Control 安装
SFTP(作者:wbond),不是FTPSync或FTP-Simple - 安装后不要急着配服务器,先确认你有:SSH 访问权限、用户名、密码或私钥路径、远程目录绝对路径(如
/var/www/html) - 如果服务器只开放了 FTP(非 SFTP),
SFTP插件完全无法使用——得换工具,比如 VS Code +sftp扩展,或 FileZilla 配合 Sublime 外部编辑
配置 SFTP.sublime-settings 文件的关键字段
右键项目根目录 → SFTP → Map to Remote... 会生成 SFTP.sublime-settings。这个文件里几个字段最容易填错:
-
host填 IP 或域名,别加sftp://前缀(加了会报Connection refused) -
remote_path必须是绝对路径,且结尾不带斜杠(/var/www✅,/var/www/❌) - 用密码登录时,
password字段可留空,首次连接会弹窗输入;但若填了明文密码,文件会被 Git 误提交——建议改用ssh_key_file指向私钥 -
upload_on_save默认为true,但保存即上传可能卡住编辑器,尤其大文件;建议设为false,手动按Ctrl+Alt+U上传
常见错误:Permission denied (publickey) 或 timeout
这类报错基本和网络或认证无关,而是 SFTP 插件在找错 SSH 配置:
- 私钥格式不对:OpenSSH 格式(以
-----BEGIN OPENSSH PRIVATE KEY-----开头)才被支持;PuTTY 的.ppk文件必须转成 OpenSSH 格式(用 PuTTYgen → Conversions → Export OpenSSH key) -
ssh_key_file路径写相对路径(如./id_rsa)会失效,必须写绝对路径(如/Users/me/.ssh/id_rsa) - 服务器禁用了密码登录,但配置里没设
password也没设ssh_key_file,插件不会提示缺啥,只报 timeout - 某些共享主机(如部分 cPanel 环境)默认关闭 SSH,即使开了也限制 SFTP 用户 chroot,此时
remote_path必须填用户 home 目录下的子路径(如/home/username/public_html)
替代方案比硬扛 SFTP 更靠谱
如果你只是想改几行 PHP/HTML 并刷新看效果,SFTP 插件反而增加出错环节。更稳的做法:
- 用
rsync配合inotifywait(Linux/macOS)做本地→远程自动同步,Sublime 纯本地编辑,不碰插件配置 - 把远程目录挂载成本地磁盘(macOS 用
sshfs,Windows 用 WinFsp + SSHFS-Win),然后直接用 Sublime 打开挂载后的文件夹 - 开发阶段用 Docker 模拟生产环境,本地改完
docker-compose up --build,彻底绕过 FTP 类操作
真正麻烦的从来不是“怎么连”,而是服务器权限、网络策略、路径映射这些看不见的约束。插件配置错了能重来,但线上环境删错一个 .htaccess 可能直接 500,所以每次上传前务必确认 sync_down_on_open 是关着的。










