У меня есть веб-приложение, работающее на Glassfish.Приложение написано на Java с использованием сервлетов.
Приложение позволяет загружать файлы и получать прямую ссылку на этот файл.
По некоторым причинам Safari и Chrome (возможно, другие браузеры) имеютпроблемы с воспроизведением файлов MP3 (и других аудио / видео файлов), загруженных в это приложение.
Пример загруженного MP3: http://uploads.graalcenter.org/upload/test.mp3
Иногда Safari загружает файл и воспроизводит его правильно, ноБольшую часть времени он либо остается на «Загрузка ...» навсегда, либо запускается на несколько секунд, а затем прекращает его загрузку.
Мой браузер отправляет заголовки этих запросов:
GET http://uploads.graalcenter.org/upload/test.mp3 HTTP/1.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7) AppleWebKit/535.1+ (KHTML, like Gecko) Version/5.1 Safari/534.48.3
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://uploads.graalcenter.org/info/test.mp3
Cache-Control: max-age=0
Мой сервер отвечает следующими заголовками ответа:
HTTP/1.1 200 OK
Date: Sun, 31 Jul 2011 02:02:03 GMT
X-Powered-By: Servlet/3.0 JSP/2.2 (GlassFish Server Open Source Edition 3.2-b06 Java/Sun Microsystems Inc./1.6)
Content-Length: 1137602
Server: GlassFish Server Open Source Edition 3.2-b06
Content-Type: audio/mpeg
Accept-Ranges: none
Для сравнения, я загрузил этот же файл на сервер Apache здесь .
Сервер отвечаетс этими заголовками:
HTTP/1.1 200 OK
Date: Sun, 31 Jul 2011 02:06:56 GMT
Connection: Keep-Alive
Content-Length: 1137602
Last-Modified: Sun, 31 Jul 2011 02:05:57 GMT
Server: Apache
Etag: "1aa08001-115bc2-4a953f48b6b40"
Content-Type: audio/mpeg
Accept-Ranges: bytes
Keep-Alive: timeout=2, max=100
Файл воспроизводится правильно.
Единственное различие, которое я вижу, состоит в том, что мое приложение не принимает запросы диапазона, но это не должно вызыватькакие-нибудь проблемы, не так ли?
Если я загружаю MP3 из своего веб-приложения через curl, он имеет тот же хэш MD5, поэтому он не повреждает MP3 каким-либо образом.
У кого-нибудь естьЛюбая идея, что может быть причиной того, что MP3 не воспроизводится правильно?