我的网站是一个在线音乐门户网站,提供在线播放系统。
当用户播放歌曲时,它由我的服务器上的端口8080上的nginx服务器提供服务。
问题是当歌曲播放完毕后,播放器会重复播放歌曲。但每次重播时,它都会再次调用服务器并开始再次下载文件进行播放。
以前我有apache来提供这些文件。那时,用户只需要一次文件,然后从他的缓存中播放重放。 我如何使用nginx实现这一目标
[我没有使用像php这样的任何脚本来提供文件。这只是直接链接。像http://www.myserver.com:8080/music/song1.mp3]
一样答案 0 :(得分:0)
查看一些以前的Apache配置和当前的Nginx配置,看看它们是如何设置为在出站文件上放置过期标头的,这将有很大帮助。正如您所知,这不是一种强制执行缓存的简单方法,但听起来“足够好”对您有用。在server{}
块中尝试使用Nginx配置块,其内容如下:
location ~* \.(mp3)$ {
expires max;
}
这应该为您的文件设置一个远期到期日期,并鼓励浏览器将其缓存更长时间。