以ANSI编码保存的强制.js文件在IIS 7.5上以UTF-8显示

我正在将现在在Windows Server 2003 IIS 6上运行的Web系统迁移到Windows 2008服务器上的IIS 7.5此系统在ANSI(葡萄牙语 – 巴西)中生成带有重音字符的JavaScript文件。 这些javascripts显示例如警报消息。 在IIS 6中,我没有问题,但现在使用IIS 7.5,如果这些文件不是UTF-8,重音字符显示不正确。 我们是否有办法强制这些文件(即使在ANSI中)被IIS 7.5作为UTF-8处理? 谢谢 ! 干杯Xcarpa

我认为最好的解决scheme不是强制IIS以UTF-8格式传送文件,而是强制IIS告诉全世界他们是ANSI编码的。 否则,需要一个ISAPIfilter来将ANSI编码文件转换为UTF-8,这可能会花费很多CPU周期,具体取决于JavaScript文件的数量和访问的频率。

我build议调整IIS上的MIMEtypesconfiguration,强制JavaScript文件以ANSIforms提供。 为此,请使用IISpipe理器,转到服务器级别,单击MIMEtypesbutton,查找“.js”扩展名,并将“; charset = Windows-1252”(不带引号)添加到MIMEtypes定义的末尾。 同样,不要replace定义,只需在引号之间添加文本,你应该修复这个问题。

正如Jose指出的那样,我不会让IIS即时转换这些资源。 相反,您可能希望使用文本编辑器或命令行工具(如recode)将实际的JavaScript文件转换为UTF-8。