HTML:强制PDF下载

时间:2010-08-29 15:35:12

标签: html safari

我的页面中有一个PDF文件的链接。

Safari直接在网站上打开pdf文件。我想下载它。

我已尝试将target="_blank"添加到<a>元素,但如果在浏览器设置中禁用了弹出窗口,则无效。

我该如何解决这个问题?

感谢

3 个答案:

答案 0 :(得分:8)

为此,您需要更改.PDF文件的标题。

所以,在你的.htaccess中,你需要这样做:

AddType application/octet-stream .pdf

答案 1 :(得分:8)

您需要为此文件设置Content-Disposition HTTP标头为attachment

Content-Disposition: attachment; filename=test.pdf

根据您使用的Web服务器的配置方式,这可能会有所不同。另一个选择是有一个服务器端脚本,它将流式传输pdf并设置此标题。

答案 2 :(得分:1)

您需要使用PHP等服务器端脚本动态强制附加标头。 以下是使用PHP的示例:

<?php
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="downloaded.pdf"');
readfile('original.pdf');
?>

编辑:

$file = $_GET['file']; 
readfile($file."pdf");  // Before doing this, check whather the user have permission to download that file.

调用您的脚本:download.php?file=document 将下载document.pdf