欢迎光临
我们一直在努力

解决上传中文附件图片失败的插件uploading downloading non-latin filename

部分站长会遇到上传带中文的图片时总是无法上传的情况,改文件名又太麻烦了,很让人恼火。

这主要是因为PHP使用utf-8编码,而在保存文件时又没有考虑到与操作系统的编码方式兼容造成的。

WP的php脚本使用的字符编码是UTF-8,所以上传后生成的文件名字符串也是UTF-8编码的,而主机系统的设置应该是ANSI的(GB2312或GBK之类的),所以导致请求文件名编码与实际文件编码不一致,导致404错误。

虽然可以通过修改代码解决,将文件名从UTF-8转为GB2312或GBK保存文件,然后再在写入数据库时还原回UTF-8版本,但会引起一个问题,那就是在后台删除一个文件,而实际上它并没有在服务器上被删掉,其他的一些水印插件等也会不正常。不过幸运的是有个同样深受编码之苦的韩国人开发了一个插件uploading downloading non-latin filename,可以解决这些问题,这个插件能在上传图片时自动重命名保存文件的文件名,并将原文件名作为标题保存,这样一来总算是能折衷的解决这恶心的编码问题了,试了一下水印插件也OK了。

uploading downloading non-latin filename下载地址:

https://iittwz.ctfile.com/fs/12094607-293934112

赞(0) 打赏
未经允许不得转载:天天网站 » 解决上传中文附件图片失败的插件uploading downloading non-latin filename
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏