我有一个 PHP,它通过 FTP 协议扫描远程 NAS 硬盘中的文件,生成一个 json 文件,然后通过 javascript 我在浏览器中列出这些文件。
当用户单击指向 mp4、jpg 和许多浏览器已知格式的链接时,浏览器会打开内容而不是下载内容。
现在,我知道使用 PHP 或 .htaccess 我可以更改标题以强制浏览器下载文件,但该文件位于远程位置,只能通过 FTP 访问,因此我无法在其中运行 PHP 或 .htaccess .
我在 PHP 中尝试了这个标头变体:
header("Content-Type: application/octet-stream");
header("Content-Transfer-Encoding: Binary");
header("Content-Disposition: attachment; filename=\"$file\"");
或者
header("Content-Description: File Transfer");
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"$file\"");
或者
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: application/image");
header("Content-Transfer-Encoding: binary");
都以:
header("Location: $url");
(网址为ftp://user:password@dyndns.org/folder/file.mp4)但它总是在浏览器中打开文件而不是下载(当然是在识别的文件扩展名上)
有任何想法吗?谢谢