搜索

当前位置:首页 > 全栈分享 > 前端乱炖 > 正文

百度云加速缓存视频及curl命令检测是否缓存的方法

发布时间:2019-03-05 23:22:17作者:魏义齐阅读:()

本文为博主原创文章,未经博主允许不得转载。

问题背景:之前摄影栏目有篇文章插入了视频,想到以后文章还会插入视频、音频,就解析了域名video.weiyiqi.net绑定在另一个服务器上,当时对于百度云加速会不会缓存音视频我没管,最近有时间查看百度云加速的帮助文档,发现缓存文件类型里不包括mp4和mp3,但又扯到了自定义规则,问客服直接给我复制了我看的文档,客服是靠不住了,还是自己来探索吧。

先来看官方关于缓存文件的一些解释:
百度云加速官方对其缓存文件问题的回答
第一条回答可以看出缓存文件类型不包括mp4、mp3;第二条回答可以知道缓存单个文件如果大于100m则不会被缓存;第三条回答扯出了规则自定义,我们来看下:
我在百度云加速添加的缓存视频的自定义规则
百度云加速规则自定义支持缓存特定的页面、目录和文件类型,在这里因为以后还有别的站的音视频文件用这个域名,所以不能用目录缓存,文件有音视频所以不能用文件类型缓存,也就是第二条、第三条都不能用,只能用第一条,为了确保我设定的成功,我咨询了百度商业安全技术客服,需要注意以下三个问题

1.在子域管理里只要你的域名状态是开启的,那么css、js和图片文件都会自动缓存,不用单独添加自定义规则,所以自定义规则一般也就用于图片和音视频,站长都会把这些放在别的服务器减轻网站服务器的压力,不会跟html文件搞一块,所以缓存粒度设置为所有都缓存即可。

2.节点缓存有效期不可设置为遵循源站,这是技术客服在我的问题截图中明确指明的,建议节点缓存有效期和浏览器缓存有效期设置为4小时。

3.参数排序只有当缓存粒度设置为细致时才需要开启。

综上得出结论:只有自定义规则才能对视频进行缓存,而且单个文件不能超过100m。

我设置完成后为了验证视频资源是否缓存到了节点上再次咨询了技术客服,这里要用到curl命令了,使用方法如下

win+r输入cmd确定→输入curl video.weiyiqi.net/blog/20181203/water1.mp4 -i,结果如下图:
curl命令检测是否缓存的结果
其中“video.weiyiqi.net/blog/20181203/water1.mp4”是我的一条视频url,检测结果中要注意CF-Cache-Status后面的,如果是HIT,就是缓存到节点上了,HIT是命中缓存的意思;如果是EXPIRED则是没有缓存到节点上。上面的检测结果是因为我刚刚更新了自定义规则造成的,在网站里重新请求一次这个文件再次检测就是HIT了。

既然接触到了curl命令我们就来拓展下知识,最起码检测结果的一些参数得知道啥意思,我一个一个百度总结如下

[Transfer-Encoding: chunked]:Transfer-Encoding是一个http头部字段,字面意思是传输编码,最新的HTTP规范里,只定义了一种编码传输:分块编码(chunked)。

[Set Cookie]:种下缓存的意思,当浏览器访问符合条件的url地址时,会自动带上这个缓存。

[Expires]:添加Expires头能有效的利用浏览器的缓存能力来改善页面的性能,能在后续的页面中有效避免很多不必要的Http请求,WEB服务器使用Expires头来告诉Web客户端它可以使用一个组件的当前副本,直到指定的时间为止。

[Cache-Control]:HTTP协议的Cache-Control指定请求和响应遵循的缓存机制,在请求消息或响应消息中设置Cache-Control并不会影响另一个消息处理过程中的缓存处理过程。max-age指明以秒为单位的缓存时间,这个时间跟自定义规则中设置的节点缓存有效期是一致的,4个小时就是14400秒。

没有写的除了简单的就是我查不到的或者我不明白不敢往这写的。

有人说百度云加速贵,贵有贵的理由,百度云加速的功能都是实打实的,而且绑定了主域,子域则不限数量,对于做网站群的站长买个专业版的百度云加速是非常实用的,觉得贵的可能是只有一个网站在用。有些功能不知道怎么用得查看帮助文档或咨询技术客服,多了解,把能用的功能都用上,对网站的作用还是很大的。买的话建议双11的时候买,1190,便宜一半,一次买个几年,个人站长专业版完全够用了。

本文标签:百度云加速 ,您可以阅读与「百度云加速 」相关的所有文章

魏义齐全栈技术交流:魏义齐全栈技术交流

上一篇:封禁ip的两种方法下一篇:我对国内主流cms系统发展的预测

赞助本站

原创不易,您的赞助就是博主更新的动力!

赞助本站可在赞助光荣榜留下外链信息,支付宝扫此二维码可领红包