Я хочу использовать новый тег html5 для воспроизведения файла wav (в настоящее время поддерживается только в FF).
https://developer.mozilla.org/En/HTML/Element/Audio
Я использую команду php readfile, чтобы получить wav-файл с жесткого диска и записать его в ответ http.
Но это не работает. Звуковой виджет в firefox просто постоянно запускает анимацию загрузки.
С тегом все в порядке, так как я могу указать другой URL-адрес в его src/source, и он отлично работает. Я могу использовать тег, который загружает файл и воспроизводит его с помощью Quicktime.
Поэтому я думаю, что, возможно, это один/все заголовки контента.
Используя расширение FF httpfox, я вижу, что эти заголовки ответов поступают с сервера:
(Status-Line) HTTP/1.1 200 OK
Date Mon, 12 Oct 2009 03:04:33 GMT
Server securesauce
Cache-Control private
Expires Mon, 26 Jul 1997 05:00:00 GMT
Pragma private
Vary Accept-Encoding
Content-Encoding gzip
Content-Length 8217
Keep-Alive timeout=15, max=100
Connection Keep-Alive
Content-Type audio/x-wav
Так что все выглядит так, как я ожидал. Единственные заголовки, которые я явно устанавливаю в сценарии (остальные устанавливаются в другом месте приложения):
Cache-Control private
Pragma private
Content-Type audio/x-wav
Когда я пробовал другой wav-файл (случайный из Интернета), httpfox не отображал никаких заголовков ответов.
Поскольку это php-файл, отправляющий содержимое, я не могу просто отправлять заголовки, так как мне нужно было бы по крайней мере отправить тип содержимого.
Есть идеи?
Выдержка из источника:
header('Cache-Control: private');
header('Pragma: private');
header("Content-Type: $contentType");
readfile($filepath);
exit;