Answers:
这个答案已经过时了。现在,我们有了
download
属性。(另请参见指向MDN的链接)
如果“下载链接”是指要下载文件的链接,请使用
<a href="http://example.com/files/myfile.pdf" target="_blank">Download</a>
在target=_blank
将下载开始之前,新的浏览器窗口出现。当浏览器发现资源是文件下载时,通常会关闭该窗口。
请注意,浏览器已知的文件类型(例如JPG或GIF图像)通常会在浏览器中打开。
您可以尝试发送正确的标题,以强制进行下载,例如此处概述。(为此,需要服务器端脚本或访问服务器设置。)
在支持HTML5的现代浏览器中,可能会发生以下情况:
<a href="link/to/your/download/file" download>Download link</a>
您还可以使用以下命令:
<a href="link/to/your/download/file" download="filename">Download link</a>
这将允许您更改实际正在下载的文件的名称。
除了(或替代)<a download
已提到的HTML5 属性外,
浏览器的下载到磁盘的行为也可以由以下http响应标头触发:
Content-Disposition: attachment; filename=ProposedFileName.txt;
这是在HTML5之前执行的方法(并且仍可用于支持HTML5的浏览器)。
download
属性相比,它得到了很好的支持
要链接到文件,请执行与其他页面链接相同的操作:
<a href="...">link text</a>
即使它们具有嵌入式插件,也要强制下载(Windows + QuickTime = ugh),您可以在htaccess / apache2.conf中使用它:
AddType application/octet-stream EXTENSION
还有另一种微妙之处可以在这里提供帮助。
我想拥有既允许浏览器内播放又可以显示的链接,以及一个纯粹用于下载的链接。新的download属性很好,但并非一直有效,因为浏览器播放或显示文件的强迫性仍然很高。
但是..这是基于检查URL的文件名的扩展名的。您不想摆弄服务器的扩展名映射,因为您希望通过两种不同的方式传递相同的文件。因此,对于下载,您可以通过将文件软链接到对该扩展名映射不透明的名称,然后指向它,然后使用下载的重命名功能来修复该名称,从而使其蒙上阴影。
<a target="_blank" download="realname.mp3" href="realname.UNKNOWN">Download it</a>
<a target="_blank" href="realname.mp3">Play it</a>
我希望只是在末尾抛出一个虚拟查询,否则混淆扩展名会起作用,但可悲的是,它没有用。
您可以按照我的方式以各种方式下载。尽管由于未设置“ allow-popups”权限而无法下载文件,但在您的环境中,这将完美运行
<div className="col-6">
<a download href="https://www.w3schools.com/images/myw3schoolsimage.jpg" >Test Download </a>
</div>
另一个由于“ X-Frame-Options”到“ sameorigin”而失败。
<a href="https://www.w3schools.com/images/myw3schoolsimage.jpg" download>
<img src="https://www.w3schools.com/images/myw3schoolsimage.jpg" alt="W3Schools" width="104" height="142">
</a>
像这样
<a href="www.yoursite.com/theThingYouWantToDownload">Link name</a>
因此,网站example.com上的文件name.jpg看起来像这样
<a href="www.example.com/name.jpg">Image</a>
./www.example.com/name.jpg
-您必须使用http://
具有指定域的绝对链接。
我知道我迟到了,但这就是经过1小时的搜索后得到的
<?php
$file = 'file.pdf';
if (! file) {
die('file not found'); //Or do something
} else {
if(isset($_GET['file'])){
// Set headers
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: binary");
// Read the file from disk
readfile($file); }
}
?>
而对于可下载的链接,我做到了
<a href="index.php?file=file.pdf">Download PDF</a>