我正在使用PHP进行twilio项目,该项目将播放频繁更改的音频文件。
Twilio的TwiML语音documentation声明:
确保您的网络服务器正在发送正确的标题以通知我们 该文件的内容已更改
这些标题是什么以及如何在PHP中设置它们。
答案 0 :(得分:1)
这些标题是什么?
这就是Twilio的缓存方式
如何在PHP中设置它们?
header("ETag: \"uniqueID\");
发送文件时,Web服务器会在名为 ETag 的标题中附加文件的ID。请求文件时,浏览器会检查文件是否已下载。如果找到缓存文件,则服务器将带有文件请求的ID发送到服务器。服务器检查ID是否匹配,如果匹配,则发送回header("HTTP/1.1 304 Not Modified");
否则服务器正常发送文件。
一种简单的检查方法是在网址末尾添加一些虚假的键值对,例如http://yoururl.com/play.mp3?key=somevalue。您的网站仍应提供与加载example.com/test.mp3时相同的mp3,但对于Twilio,它似乎是一个新的URL(未缓存)。
答案 1 :(得分:0)
Twilio使用Squid缓存MP3。您可以使用缓存控制标头控制项缓存的时间。
缓存控制:max-age = 3600