1

我有一个nginx server(1.2.4),它提供了一些图片供下载。但是,我没有将这些文件放在公用文件夹中,因为我想做一些身份验证或其他事情。

我对这些静态文件使用X-Accel-Redirect功能。nginx现在我可以从桌面浏览器下载图像,所以我想我已经配置好了 nginx。

但是,当我使用 android 设备时,我无法下载这些文件。Android 总是用“未命名的名称”显示“下载失败”。我将 Content-Disposition 更改为“内联”,然后我可以在浏览器中看到图像,所以我认为数据已发送到设备。

我不知道为什么android设备即使数据已经发送也无法成功下载。

另一件事是,如果我只是将图像文件放在“公共”文件夹中,让安卓设备直接在那里下载,安卓设备将正常工作,它可以下载图像。

所以,如果我使用 nginxX-Accel-Redirect功能提供图像,即使数据已经发送,android 也无法下载,如果我只是将它们放在 public 文件夹中,android 浏览器可以下载。

请帮我解决这个问题。

4

1 回答 1

0

我在某处读到这是因为 Android 有一个“错误”,它需要任何下载文件的元数据。所以我们应该配置 nginx 来根据文件的类型(pdf、xls 等,除了 web 为 html/php 等)提供元数据

于 2013-12-18T02:49:44.280 回答