WinSCP,Debian 和 Sublime Text-服务器无法识别文件更改

WinSCP,Debian 和 Sublime Text-服务器无法识别文件更改

我正在使用 WinSCP 连接到 Debian 服务器(如果这有区别的话,使用私钥而不是密码)。它的设置是,当我双击文件时,它会在 Sublime Text(v3,Build 3065)中打开。

现在,当我在 Sublime 中保存时,WinSCP 会检测到保存并上传新编辑的版本。

我已经在多个不同的服务器上使用这项技术一段时间了,它运行完美,然而,在我正在使用的这台新服务器上,只有在多次尝试保存后才会出现更改。

WinSCP 似乎正在识别文件的更改并上传它 - 所以我认为这是服务器上的某些东西 - 特别是因为它在其他服务器上起作用。

任何想法都将不胜感激。

答案1

这可能是 DST、时区或类似的时间戳问题。

上传时,WinSCP 默认更新文件时间戳以匹配本地文件。时间戳应该是“现在”,因为您刚刚保存了文件。WinSCP 或 FTP 服务器可能无法正确转换时间戳,因此生成的时间戳比文件的先前版本更旧。如果 Web 服务器(或使用该文件的任何应用程序)使用缓存(或即时编译或类似功能),它可能会认为上传的文件太旧,不值得重新读取/重新编译。

此问题在 Windows XP 及更早版本中很常见(由于所谓的“夏令时错误”在这些版本中)。但在较新版本的 Windows 上也可能发生这种情况,特别是如果自动调整时钟以适应夏令时选项已经关闭。

请参阅 WinSCP 常见问题解答为什么我上传到网络服务器的更改在网络浏览器中不可见?以及关于时间戳

相关内容