Art*_*mko 5 php android download content-disposition http-headers
问候。
我使用以下一组标头来处理在浏览器窗口中内联打开的文件(通常是 PDF):
header("Content-Type: " . $mime[$ext]);
header("Content-Disposition: inline; filename=" . $path_parts["basename"]);
header("Content-length: $fsize");
header("Cache-control: private");
Run Code Online (Sandbox Code Playgroud)
这段代码被放置在download.php文件中,以实现在文件实际抛出到客户端之前完成额外的步骤。文件的 uri 设置为 get 变量,如下所示:
http://sitedotcom/download.php?=file=path-to-file.pdf
Run Code Online (Sandbox Code Playgroud)
问题如下。桌面在浏览器窗口中内联打开文件,但 Android 设备会下载该文件并将文件名设置为 download.php 而不是 file-to-file.pdf。这会引起误解,我正在寻求帮助。
有没有办法以某种方式设置标头以便文件获得正确的名称?
也许你可以像这样使用 apache 模块重写:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^pdf/([^/\.]+)$ download.php?file=$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
用户会询问:
http://sitedotcom/pdf/path-to-file.pdf
Run Code Online (Sandbox Code Playgroud)
PHP 将处理该 URL
http://sitedotcom/download.php?file=path-to-file.pdf
Run Code Online (Sandbox Code Playgroud)
因此,当保存文件时,它将位于“path-to-file.pdf”下
| 归档时间: |
|
| 查看次数: |
2151 次 |
| 最近记录: |