![FTP 文件传输带中文字符](https://linux22.com/image/1581277/FTP%20%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93%E5%B8%A6%E4%B8%AD%E6%96%87%E5%AD%97%E7%AC%A6.png)
当我尝试通过 ftp 发送包含中文字符的文件时,收到以下信息:
500 ERROR (Internal Server ERROR)
通过我的后端代码;它对英文字符工作正常,但对中文不工作。通过 FTP 发送这些带有中文名称的文件的最佳方法是什么?提前谢谢,希望一切顺利。
答案1
文件传输协议,定义在 RFC959后来,是互联网上最古老的协议之一,使用 7 位 ASCII 作为主要字符集。国际字符需要使用 Unicode 的协议。这样的协议是 SSH 文件传输协议 或 SFTP,提议于RFC2640。
使用 SFTP 客户端,您将在客户端和服务器上使用 UTF-8 协议(如果它们的实现遵循标准)。Windows 10 包含命令行实用程序sftp
。或者,您也可以使用第三方实用程序,例如免费的
温SCP。
答案2
使用 FTP二进制传输,而不是 ASCII(ANSI)和 zip 文件来隐藏文件名。