为什么我在bugzilla下载的UTF-8文件名是可引用的可打印文件名?

时间:2010-12-14 17:50:57

标签: bugzilla

我安装了一个带有英语和日语模板的bugzilla安装程序,以支持我们在美国和日本的用户。我的用户在文件名中包含日文字符的附件出现问题;英文文件名没问题。

假设我上传了一个名为“Blah操作手.doc”的文件。当我下载文件时,我得到一个提示,要求我将其保存为“= _UTF-8_Q_Blah = E6 = 93 = 8D = E4 = BD = 9C = E6 = 89 = 8B _ = .doc”。保留文件中的所有数据,但文件名似乎无法正确解码。通常,文件名最终会丢失原始扩展名,如果用户尝试在浏览器中打开附件,则会在页面中填充垃圾。即使数据库“filename”字段正确显示原始字符,也会发生这种情况。

所有类型的文件都包含非ASCII字符 - doc,xls,pdf,png,txt等。我能够在Bugzilla 3.6.3的默认模板上重现这一点,无论区域设置如何或模板语言。

这主要是Internet Explorer的问题。 Chrome和Safari也有类似的问题,但我确实没有任何用户使用过这两种方法。 Firefox工作正常,并按预期返回原始文件名。

我有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

这个问题有一个很长的答案,其他人可能会给你,但基本的问题是没有合理的方法来编码所有浏览器都支持的UTF-8文件名。我怀疑你正在使用IE,它不支持我们正在使用的标准编码方法。或多或少,这可以在Bugzilla中解决,但我们尚未完成。在bugzilla.mozilla.org上提交了一个bug,但我现在还没找到它。