Pureftpd是一款快速,高质量,功能齐全的ftp服务器,最重要的是可以支持设置客户端默认编码,Pureftpd非常强大非常好用。我给大家解决一个问题:PureFTPd的文件被自动重命名
有时当文件上传后,自动的被重命名为类似“pureftpd.3f3300d2.33.0001”。这是什么原因?
用于上传文件的FTP客户端使用的FTP命令是STOU(储存***文件),而不是STOR 。检查ftp日志文件,应该可以看到这样的东西:
- (user@a.b.c.d) [DEBUG] Command [stou] [file_name_from_the_client.ext]
- /var/ftp/ftpcustomer/pureftpd.3f3300d2.33.0001 uploaded (218168 bytes,
- 127.79KB/sec)
STOU命令告诉FTP客户端开始向远程站点传输文件;远程FTP服务器选择的文件名将 会是ftp客户端使用的当前文件夹中***的文件。服务器的应答将包含这个文件名。
Ftp客户端启用了一个类似“创建***文件”或者“带临时文件名上传文件”的选项。应该让ftp用户去掉这个选项。
企图在服务器端,禁用STOU命令并不是好主意,也不是好的解决方案。因为有些ftp客户端使用STOU来上传具有***临时文件名的文件,然后在上传完成后重命名文件 。这样可以避免失败的上传留下不完整的文件。
通过文章的描述和分析,想必大家知道了PureFTPd的文件被自动重命名的原因,赶快去修正吧!
【编辑推荐】