商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Sublime如何同步远程服务器文件_Sublime插件SFTP配置方案【全解】

Sublime如何同步远程服务器文件_Sublime插件SFTP配置方案【全解】

  发布于2026-07-06 阅读(0)

扫一扫,手机访问

Sublime Text 本身没有远程文件同步功能,得靠 SFTP 插件来补上。可别小看这个插件,装上之后能不能用,完全是另一回事。90%的“连不上”“不上传”问题,其实都卡在四个看似不起眼的细节上:版本装错、配置文件放错位置、字段写错,或者 SSH 认证链路不通。

Sublime如何同步远程服务器文件_Sublime插件SFTP配置方案【全解】

怎么确认该装 SFTP 还是 SFTP-Next

很简单,打开 Help → About Sublime Text,看一眼 Build 号就行:

  • 如果 Build 号是 41xx 开头的(比如 Build 4143),那就必须装 SFTP-Next。装了原版的话,会报 ImportError: No module named 'urllib3',菜单直接消失,连影子都找不到。
  • 如果 Build 号是 3xxx(比如 Build 3211),那只能装作者为 wbond 的原版 SFTP。注意,搜到 sftp-clientFTPSync 都是不对的,别搞混了。
  • 装完之后,必须重启 Sublime,否则 Project 菜单里看不到 SFTP,右键也没反应。

sftp-config.json 放哪、怎么写才生效

这个文件不是全局配置,它只对“右键映射的那个本地文件夹”起作用。路径、命名、字段,错一个字符就静默失效,就像钥匙插错锁孔,门就是不开。

  • 文件名必须是 sftp-config.json——全小写、无空格、无额外后缀。
  • 必须放在项目根目录下,也就是侧边栏最顶层那个文件夹里。不能放在子目录,也不能放在桌面或用户主目录。
  • host 字段填 IP 或域名,不要带 ssh://;端口单独写 port 字段,别拼在 host 后面,否则会出问题。
  • remote_path 必须以 / 开头,结尾建议也加个 /(比如 "/var/www/html/"),否则路径拼接可能会偏移。
  • 如果用密钥登录,记得删掉 password 字段,改用 private_key(ST3/ST4 都支持)。值必须是绝对路径,比如 "/home/you/.ssh/id_rsa""C:/Users/You/.ssh/id_rsa"。相对路径、~ 展开、权限不是 600,都会导致 Permission denied (publickey)

upload_on_sa ve 不触发?检查这三个隐性前提

如果你已经设置了 "upload_on_sa ve": true,但文件没自动上传,别急着怪插件——很可能是 Sublime 没把当前文件识别为“该同步的文件”。这就像你喊了个人,但他没听到,或者没意识到你在叫他。

  • 当前文件必须在已映射的项目文件夹内及其子目录下。如果你在桌面上打开一个 index.js,哪怕同目录下有个 sftp-config.json,也不会触发上传。
  • 必须通过侧边栏右键本地文件夹 → SFTP → Map to Remote…(或 Setup Server)完成绑定。手动新建 sftp-config.json 不会自动激活映射,这一点很多人容易忽略。
  • upload_on_sa ve 是布尔值,必须写 true,不能写成 "true" 字符串,也不能嵌套在 filessync_down_on_open 下面,否则不生效。
  • 网络抖动或服务器响应慢时,默认的 3 秒超时会静默失败。可以在配置里加 "timeout": 10,提高一点容忍度。

上传后远程文件打不开?权限和编码常被忽略

文件传上去了,但 Nginx 或 Apache 报 403 或者乱码,这问题往往不在连接,而在服务端落地的细节上。

  • 默认上传权限是 600(仅属主可读写),但 Web 目录通常需要 "file_permissions": "0644""dir_permissions": "0755"
  • 如果中文文件名或内容乱码,优先检查 "remote_encoding": "utf-8" 是否设置。同时,避免在 remote_path 中使用非 ASCII 字符,否则容易出问题。
  • 服务器 umask 设置过严(比如 077)会导致新建文件不可读。SFTP 插件不覆盖系统 umask,得靠 file_permissions 显式覆盖。
  • 日志藏得比较深,但很有用:按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 SFTP: Show Console 回车,所有底层 ssh/sftp 命令和错误信息都会实时打印出来,排查问题非常方便。
本文转载于:https://www.php.cn/faq/2444990.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注