今天测试童鞋告知有个报表文件下载不了,于是去验证了下,发现有个1.1M的文件点击下载会报网络错误❎,而小文件(几十K的那种)可以下载,于是把文件copy到本地,发现果然1.1M的文件还是下载不了。。

解决步骤: 1, FileInputStream fis = new FileInputStream(file); response.setHeader("Content-Length", Long.toString(fis.getChannel().size()));

经过这个设置后本地可以下载了,然后发到测试环境后还是不能下载。。。 于是又Google了一番。。。

2, 发现nginx的错误日志: 2017/11/23 19:58:05 [crit] 14720#0: *10005 open() "/usr/local/nginx/temp//5/07/0000000075" failed (13: Permission denied) while reading upstream, client: 10.30.2.34, server:

看起来像是没有权限的样子,于是chown设置temp文件夹权限并重启Nginx后问题解决

参考: https://nutz.cn/yvr/t/ttedtdubf8i2bq3sokvv1l9t82