如何解决Sublime Text 2中SFTP连接超时,实现长时连接
解决Sublime Text 2 SFTP插件连接超时问题
嘿,我之前帮不少开发者搞定过这个SFTP连接超时的麻烦,你的情况太典型了——第一次保存要等30秒重连,第二次秒传,说明连接根本没保住,咱们一步步来解决:
先纠正配置误区:别搞混connect_timeout的作用
你提到的"connect_timeout"其实是设置尝试连接的超时阈值(比如多久连不上就放弃),完全不是用来维持长连接的!真正管连接保持的是这几个配置项,打开你的sftp-config.json文件,加上或调整这些:
"keepalive_interval": 30:每隔30秒发送一个心跳包给服务器,防止服务器因为空闲断开连接,这个是核心配置!"connection_keepalive": true:明确启用连接保持功能,让插件不会主动断开空闲连接"max_idle_time": 7200:设置连接最大空闲时间(这里是2小时,你可以改成36000就是10小时),超过这个时间才会主动断开
检查服务器端的SSH配置(关键!)
很多时候不是客户端的问题,是服务器主动踢掉了空闲连接。如果能操作服务器的话,修改/etc/ssh/sshd_config里的这两个参数:
ClientAliveInterval 30:和客户端的心跳间隔对应,服务器每隔30秒给客户端发一次探测包ClientAliveCountMax 120:如果连续120次没收到客户端回应才断开,算下来就是30*120=3600秒(1小时),你可以根据需求调大这个数
修改完记得重启SSH服务:sudo service sshd restart
额外的小技巧
- 别让Sublime Text休眠:有些系统的节能模式会让后台应用断网,你可以在系统设置里把Sublime排除在休眠列表外,或者时不时切一下Sublime的窗口,确保它保持活跃
- 手动触发小操作应急:如果暂时没法改配置,每隔半小时随便保存一个小文件(比如空白文本),主动维持连接,避免服务器断开
- 尝试升级插件:虽然你用的是Sublime Text 2,还是可以在Package Control里检查下SFTP插件的更新,旧版本可能有keepalive失效的bug
按照上面的步骤调整后,应该就能让连接保持数小时,不用每次保存都等重连了。
内容的提问来源于stack exchange,提问作者Benjamin
相关产品推荐
相关产品推荐

