解决 Tomcat 下载文件名中包含中文的文件失败的问题

解决 Tomcat 下载文件名中包含中文的文件失败的问题


1、问题背景

在Tomcat 的 {tomcat 安装路径}/webapps/ROOT/ 目录下,创建了 file/downloads/ 目录,用于存放程序定时生成的文件。

可以实现浏览器文件下载,访问url如下:

http://localhost:8080/file/downloads/test.xlsx

2、问题现象

非中文名称的文件,可以正常通过浏览器下载;

但是,文件名中包含中文的文件,下载不了。

3、解决方案

修改 {tomcat 安装路径}/conf/server.xml 中的配置,处理方式如下:

增加 URIEncoding="UTF-8"

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>

修改后,重启tomcat服务,文件命中包含中文的文件,即可正常下载。

原文地址:https://www.cnblogs.com/miracle-luna/p/15620971.html