如何实现Content-Disposition:附件?

发布于 2024-12-26 22:43:40 字数 371 浏览 2 评论 0原文

我试图让我的网站上的 mp3 通过左键单击下载,而不必右键单击并另存为,因此为了做到这一点,我必须设置 Content-Disposition: 附件。这是我的第一个网站,所以我不知道如何实际执行此操作,但是我是在 html 标记中执行此操作还是在我的托管网站上以某种方式设置此操作?

这是我的标记的示例。

<div class="download">
<a href="MP3/Morgan Page, Sultan & Ned Shepard, and BT feat. Angela McCluskey.mp3" 
<img src="img/dlicon.png"/></a>
</div>

I am trying to make it so that mp3's on my site are downloaded by left clicking instead of having to right click and save as, So in order to do that, I have to set the Content-Disposition: attachment. This is my first website so I am new to how to actually do this, but do I do this in my html markup or do I set this somehow with my hosting site?

Here is an example of what my markup looks like.

<div class="download">
<a href="MP3/Morgan Page, Sultan & Ned Shepard, and BT feat. Angela McCluskey.mp3" 
<img src="img/dlicon.png"/></a>
</div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

暖伴 2025-01-02 22:43:40

MP3 列表示例:

<a href="download.php?file=testing.mp3">Download MP3</a>
<a href="download.php?file=testing2.mp3">Download MP3</a>

download.php :

<?php

$file = $_GET['file'];  

header('Content-type: audio/mpeg');

header('Content-Disposition: attachment; filename="'.$file.'"');

?>

Example of MP3 Lists:

<a href="download.php?file=testing.mp3">Download MP3</a>
<a href="download.php?file=testing2.mp3">Download MP3</a>

download.php :

<?php

$file = $_GET['file'];  

header('Content-type: audio/mpeg');

header('Content-Disposition: attachment; filename="'.$file.'"');

?>
不顾 2025-01-02 22:43:40

正如其他人所说,您不会在 HTML 中执行此操作,并且动态解决方案(例如,使用 PHP)是多余的。

对于您的情况,我将在 Web 服务器配置中配置 Content-Disposition 标头。对于 Apache,您可以基于位置设置标头,或者使用 .htaccess 与某些文件名匹配的文件。

As others have said, you don't do that in HTML, and a dynamic solution (e.g., using PHP) is overkill.

In your case, I'd configure the Content-Disposition header in the web server config. For Apache, you could set the header based on location, or have a .htaccess file that matches certain filenames.

金橙橙 2025-01-02 22:43:40

PHP 中也有一个特殊的函数:

bool http_send_content_disposition ( string $filename [, bool $inline = false ] )

请参阅此处的 PHP 手册https://www.php.net/manual/en/function.http-send-content-disposition.php

There's a special function for that in PHP, too:

bool http_send_content_disposition ( string $filename [, bool $inline = false ] )

See PHP Manual here: https://www.php.net/manual/en/function.http-send-content-disposition.php

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文