一 问题识别:
1.是上传到Ubuntu服务器(Linux?),Windows服务器没有问题
2.文件和数据库皆为UTF-8编码
二 我的解决方案
1.上传时给文件名编码或换成字母数字
2.数据库记录原文件名和转换的文件名及路径
3.下载时换回原文件名(单独的下载页,不是直接文件地址)
header('Content-Disposition: filename="$chinesename.jpg"');
如果报错Headers already send,读文件前用
while (ob_get_level()){ ob_end_clean(); }