2010-09-23 1 views
0

Мой сайт - это онлайн-музыкальный портал с онлайн-игрой.Принуждение браузера пользователя к сохранению файлов в кеше

Когда пользователь воспроизводит песню, он обслуживается сервером nginx на порту 8080 на моем сервере.

Проблема заключается в том, что песня закончила играть, игрок повторяет песню. Но каждый раз, когда он воспроизводится, он вызывает другой вызов сервера и снова загружает файл для воспроизведения.

Раньше у меня был apache для обслуживания этих файлов. В это время пользователь только что запросил файл один раз, и повторы были воспроизведены из его кеша. Как это сделать, используя nginx

[Я не использую какой-либо скрипт, например php, чтобы обслуживать файл. Это просто прямая связь. Например http://www.myserver.com:8080/music/song1.mp3]

ответ

0

Это поможет вам увидеть некоторые из ваших прежних конфигураций Apache и текущей конфигурации Nginx, чтобы увидеть, как они настроены, чтобы поместить заголовки истечения в исходящие файлы. Это не надежный способ обеспечить кеширование, как вы, возможно, знаете, но это звучит как «достаточно хорошо», будет работать на вас. Попробуйте конфигурационный блок Nginx в пределах вашего server{} блока, который читает так:

location ~* \.(mp3)$ { 
    expires max; 
} 

Это должно установить далеко в будущем срока действия ваших файлов и поощрять браузер кэшировать их больше.

+0

Спасибо, bro pjmorse. Это сработало для меня. :) – Hardeep