python用,pyftpdlib架设的ftp服务器中文文件名显示乱码如何设置

python用,pyftpdlib架设的ftp服务器中文文件名显示乱码如何设置,第1张

pyftpdlib内部使用utf8,而windows使用gbk,可以将pyftpdlib进行修改:
filesystemspy 将所有的utf8 换成 gbk
handlerspy 将所有的utf8 替换成 gbk
重新执行 python -m pyftpdlib -p 21
不在乱码

首先,不建议使用中文文件名
因为中文会被 URL编码发送,到服务器端的时候虽然会解码,但是如果和你的编码不一致,就解不出来了。
简单的说,URL中的中文 ,在常见的浏览器中,默认会以UTF-8编码进行编码后发送到服务器端!而在中文 windows环境的服务器中,解码URL的时候,却用的是gb2312编码进行解码的,这样就导致了没法得到你在地址栏里输入的中文原文!
所以就会提示找不到文件名了。
如果一定要用中文 ,解决办法,仅限你本地浏览的解决办法
在浏览器中,打开“internet选项“菜单,选择”高级“,然后找到 “发送utf-8 URL“,把前面的钩去掉。然后确认。再重启浏览器。这样地址栏里的中文就会默认以gb2312编码 进行发送,这样服务器端就能正确找到该中文文件名的文件了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12806639.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存