最近帮助一同事解决 http 下载文件时,中文文件名在firefox下乱码的问题,我的同事在http header中是这样操作的:
"Content-Disposition","attachment;filename=文件名.xx"
其实,按照 rfc231 , Content-Disposition 应该按照如下格式设置:
"Content-Disposition","attachment;filename*=utf-8'zh_cn'文件名.xx"
只要严格按照标准设置以后,自然在各种浏览器下都会正常运行了.
支持IE9以下版本
add_header Content-Disposition "attachment;filename=$arg_filename;filename*=utf-8'zh_cn'$arg_filename";