搭好存储服务器,自然要架一个ftp把我的资源分享出来。之前一直是用serv-U的6.1版做的ftp服务器端,后来尝试过在linux下用vsftpd,但是会出现乱码问题,非常郁闷只好换回windows。之后又尝试了好几个ftp服务器端软件,都没有很好地解决中文字符编码的问题。直到用回Serv-U 6.4.0.6版。现在把一些经验分享出来。
ftp乱码的现象和原因:
访问ftp,遇到中文文件名出现乱码。
由于在FAT和NTFS文件系统中,中文是直接按照操作系统所使用的编码方式存储的,中文系统通常是gbk编码。针对不同的ftp客户端软件,有的ftp服务器端软件无法将文件系统中的编码,转换成客户端软件所使用的编码,于是就出现了乱码。
vsftpd
Linux下比较流行的轻量级ftp服务器端软件。ext3默认使用utf-8编码,而windows客户端采用gbk,于是在服务器上正常的中文,在windows客户端中显示乱码。如果是从客户端上传的文件,则在服务器端显示中文乱码,但在客户端可以正常浏览。
proftpd
Linux下功能强大的ftp服务器端软件。从1.32rc1开始,支持设置服务器端和客户端的编码方式。比如设置服务器端编码为utf-8,客户端编码为gbk,可以初步解决乱码问题。但是针对使用utf-8编码的客户端,反而会出现乱码问题。
FileZilla Server
跨平台的ftp服务器端软件,我只用过windows平台下的。实际测试的结果是,用windows的资源管理器打开,可以正常阅读,但是用ftp客户端软件,比如cuteFTP, FlashFXP等,会出现乱码。用FileZilla自己的客户端就没有问题。
Serv-U 8.x
最新版的Serv-U,功能强大,使用web的方式进行管理。实际测试结果是,用windows的资源管理器打开,可以正常阅读,但是在IE、Firefox等浏览器中打开,出现乱码,用ftp客户端软件,比如cuteFTP, FlashFXP等,也会出现乱码。
相比它的6.x老版本,在字符编码方面反倒倒退了。
Serv-U是商业软件,最新的8.2版本还没有破解,8.0版有破解,但是非常不稳定,基本上每个五分钟自己重启一次,原因不明。
Serv-U 6.x
最经典的版本,用的最广泛。经测试,不论是资源管理器访问ftp,还是浏览器,各类ftp客户端,都能正常浏览中文文件名。
6.1版本我找到过序列号,但是一个序列号在同一局域网中只能使用一次,不然会被发现失效。最后的6.4.0.6版本有算号器,可以完美破解。
毫无疑问,我最终使用了6.4.0.6的中文绿色破解版。非常稳定,非常好用。