Как реализовать Content-Disposition: вложение?

Я пытаюсь сделать так, чтобы mp3 на моем сайте загружались щелчком левой кнопки мыши вместо того, чтобы щелкнуть правой кнопкой мыши и сохранить Как, поэтому для этого я должен установить Content-Disposition: attachment. Это мой первый веб-сайт, поэтому я новичок в том, как это сделать, но делаю ли я это в своей 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>

3 ответов


пример списков MP3:

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

скачать.на PHP :

<?php

$file = $_GET['file'];  

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

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

?>

как говорили другие, вы не делаете этого в HTML, и динамическое решение (например, с использованием PHP) является излишним.

в вашем случае я бы настроил заголовок Content-Disposition в конфигурации веб-сервера. Для Apache вы можете установить заголовок в зависимости от местоположения или .реврайт файл, который соответствует определенным именам файлов.


для этого в PHP тоже есть специальная функция:

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

посмотреть руководство по PHP здесь:http://de2.php.net/manual/en/function.http-send-content-disposition.php