我对HTML有一个基本的概念。我想在我的样本网站创建下载链接,但我不知道如何创建它。我如何制作一个下载文件的链接而不是访问它?
当前回答
我知道我迟到了,但这是我搜索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>
其他回答
在支持HTML5的现代浏览器中,可以实现以下功能:
<a href="link/to/your/download/file" download>Download link</a>
你也可以用这个:
<a href="link/to/your/download/file" download="filename">Download link</a>
这将允许您更改实际正在下载的文件的名称。
我知道我迟到了,但这是我搜索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>
你可以用两种方式使用
<a href="yourfilename" download>Download</a>
在旧浏览器中,这个选项是不可用的
2nd
<a href="yourfilename" download="newfilename">Download</a>
在这里,您可以选择重命名您的文件,并下载与不同的名称
这个答案已经过时了。现在我们有了download属性。(另见MDN链接)
如果你所说的“下载链接”是指下载文件的链接,那就使用
<a href="http://example.com/files/myfile.pdf" target="_blank">Download</a>
target=_blank会在下载开始之前出现一个新的浏览器窗口。当浏览器发现该资源是一个文件下载时,该窗口通常会关闭。
请注意,浏览器已知的文件类型(例如JPG或GIF图像)通常会在浏览器中打开。
你可以尝试发送正确的标题来强制下载,比如这里。(需要服务器端脚本或访问服务器设置。)
要链接到该文件,请执行与任何其他页面链接相同的操作:
<a href="...">link text</a>
要强制下载即使它们有嵌入式插件(Windows + QuickTime = ugh),你可以在htaccess / apache2.conf中使用这个:
AddType application/octet-stream EXTENSION