You need to enable JavaScript to run this app.
文档中心
文档控制台
注册
内容分发网络

内容分发网络

复制全文
下载 pdf
最佳实践
CDN 加速视频
复制全文
下载 pdf
CDN 加速视频

如果您的网站内容以视频点播内容为主,您可以使用火山引擎 CDN 为网站做加速,以提高用户观看视频的流畅度,同时可帮助网站增强对视频资源的保护。本文介绍使用 CDN 加速视频类网站推荐的方法。

一. 前提条件
  • 您已开通火山引擎 CDN 服务,如果未开通,请先前往 CDN 开通页 进行开通。
  • 您已经拥有稳定运行的业务服务器(即源站)和已备案的加速域名。
二. 业务场景
  • 加速域名:videos.example.com。
  • 业务内容:视频点播,音频内容为主。
  • 服务区域:中国内地。

业务诉求:

  • 减少回源流量消耗;
  • 提升视频的首播时间和流畅度。
  • 需要使用 HTTPS 加密服务保障访问数据安全。
  • 需要支持防盗链策略,防止资源被恶意盗链,流量被恶意盗刷。
三. 推荐配置

网站需要加速的内容如果除了音视频业务,如果有其他网页或者图片业务,可将业务进行拆分后再进入如下步骤,各使用一个域名选择不同业务的加速类型加速效果更佳,例如:

  • 音视频业务:videos.example.com
  • 图片业务:pics.example.com

域名操作入口:

  • 登录火山引擎 内容分发网络
  • 域名新增:在左侧导航栏,点击 域名管理
  • 在域名管理页面,点击 新增
  • 更多详情可前往 快速入门

域名新增完成后,可在左侧导航栏,点击 域名管理。在域名列表页,找到待配置的域名,在 操作 列上,点击 管理 进入域名配置页。然后点击 编辑,进入域名配置编辑页面。

alt

在配置页进行配置修改或开关开启、关闭操作后,您还必须点击右上方 提交编辑,配置才能生效。

域名支持多配置项同时修改,一次提交。下文为根据点播业务场景,推荐的配置项操作指南。

3.1 提高命中率,减少回源

在配置页,点击缓存配置,可通过以下维度提升文件在 CDN 的命中率,减少回源带宽。

3.1.1 配置缓存过期时间

  • 长期不更新的音视频资源,建议缓存30天以上,例如:mp3,mp4。
  • 若加速业务属于 m3u8 点播类,针对 ts 文件可根据实际业务更新频率设置缓存时间。
  • 常见的音视频类文件后缀有:
文件类型
文件格式
MPEG 视频
MP4mpegmpg3pg
微软视频
aviwmvasfasx
Real Player
rmrmvb
Media
ogg
Apple 视频
movm4v
其他视频
datmkvvobflvf4v
音频格式
wmamp3

配置示例
MP4,MP3 类文件缓存 1 年, jpg类文件缓存 30 天。其他文件缓存行为遵循源站响应中 Cache-Control 和 Expire 头部的指示。
alt

3.1.2 配置去问号参数缓存

在如下情况配置去问号参数缓存,可有效提高缓存命中率:

  • URL 中?后的参数作为鉴权用途
  • URL 中?后的参数变化与本身资源内容无关

配置示例
全部文件去问号参数缓存,带参数回源。
alt

3.1.3 开启 Range 回源

若源站支持 Range 请求,通过在 CDN 开启回源 Range,可有效降低回源带宽。

注意:当开启 Range 回源时,CDN 回源的请求是分片回源分片缓存。如果将 range 回源状态从开启调整为关闭时,无论本地是否已有部分 Range 的缓存,CDN 都会重新回源拉取完整文件,此时回源带宽将会增加。

配置示例
在配置页,点击 回源配置,开启 Range 回源。
alt

3.2 保障访问数据安全

配置 HTTPS 证书,将终端用户和 CDN 之间的通信进行加密,可保障访问数据安全。开启HTTPS的同时,火山 CDN 会默认帮您开启HTTP/2 来提升 web 性能,减少网络延迟。同时也会默认帮您开启 HTTP 和 HTTPS 共享缓存来减少回源,提升命中率。

配置操作

  • 在配置页,点击 HTTPS 配置,设置 状态开启,在 服务授权 处,点击 授权
    alt
  • 如果您的加速域名暂时无证书,可在 火山引擎证书中心申请或购买。
  • 如果您在证书中心已有可用证书,可以直接选择证书。
  • 如果您在证书中心无可用证书,可点击 上传证书,证书上传后,将会自动在证书中心托管。
    alt
  • 开启强制跳转 HTTPS :用户访问为 HTTP 请求时,会将其重定向为 HTTPS 请求,并进行后续响应。
    alt

3.3 防止恶意盗链

在配置页,点击访问控制,可配合客户端请求支持对 URL 鉴权的功能来防止资源被恶意盗链,流量被恶意盗刷的情况。火山引擎提供 5 种鉴权方式,可自行针对业务需求选择一种进行配置。

注意事项:

  • URL 鉴权在 CDN 节点侧进行,无需服务端进行改造;
  • 开启 URL 鉴权后,在用户端发起访问时,需要按约定携带签名信息,否则会导致无法访问;
  • 通过 CDN 鉴权校验的请求,在回源时会去掉域名鉴权相关的参数或加密路径。

3.3.1 A 类鉴权示例

访问示例:https://www.volcengine.com/product/cdn?sign=1620291453-RGjpOiCONz-0-a8054e3070d32f4c2ba92cf1e8afc66c
回源示例:https://www.volcengine.com/product/cdn
若域名下所有资源的访问为格式:scheme://host/path?sign=timestamp-rand-uid-md5hash(path-timestamp-rand-uid-key),回源格式:scheme://host/path,则可开启 A 类鉴权配置。

字段说明:

  • scheme: 请求协议;
  • host:用户访问的加速域名;
  • path:请求路径,从发起的请求中截取,以 "/" 开头;
  • timestamp:请求时间,十进制 UNIX 时间;
  • rand:随机字符串,由 1 ~ 100 位大小写字母与数字组成;
  • uid:默认为 0;
  • key:与 CDN 服务端约定的秘钥,主 KEY 与备 KEY 均可;
  • sign:请求鉴权的参数,可自定义参数名。

开启 A 类型后,需要配置的内容如下:
alt

3.3.2 B 类鉴权示例

访问示例:https://www.volcengine.com/202105061700/2a76bb4719ab4beb77b4746b9c984a1d/product/cdn?dfrfr=gtgbnh&abc=45gbg
回源示例:https://www.volcengine.com/product/cdn?dfrfr=gtgbnh&abc=45gbg
若域名下所有资源的访问为格式:scheme://host/timestamp/md5(key + timestamp + path)/path(?query),回源格式为:scheme://host/path(?query),则可开启 B 类鉴权配置。

字段说明 :

  • scheme: 请求协议;
  • host:用户访问的加速域名;
  • timestamp :请求时间,格式为 YYYYMMDDHHMM,如 202107281500;
  • key :与 CDN 服务端约定的秘钥,主 KEY 与备 KEY 均可;
  • path :请求路径,从发起的请求中截取,以 "/" 开头;
  • sign:请求鉴权的参数,可自定义参数名。

开启 B 类型后,需要配置的内容如下:
alt

3.3.3 C 类鉴权示例

访问示例:https://www.volcengine.com/b1725c0a6120092863001cd8004c4adb/6093AF7D/product/cdn?dfrfr=gtgbnh&abc=45gbg
回源示例:https://www.volcengine.com/product/cdn?dfrfr=gtgbnh&abc=45gbg
若域名下所有资源的访问为格式:scheme://host/md5(key + path + timestamp)/timestamp/path(?query),回源格式为:scheme://host/path(?query),则可开启 C 类鉴权配置。

字段说明 :

  • scheme: 请求协议;
  • host:用户访问的加速域名;
  • timestamp :请求时间,格式为 YYYYMMDDHHMM,如 202107281500;
  • key :与 CDN 服务端约定的秘钥,主 KEY 与备 KEY 均可;
  • path :请求路径,从发起的请求中截取,以 "/" 开头;
  • sign:请求鉴权的参数,可自定义参数名。

开启 C 类型后,需要配置的内容如下:
alt

3.3.4 D 类鉴权示例

访问示例:https://www.volcengine.com/product/cdn?sign=e954e253c33634b510443af72406600f&t=1620291453&dfrfr=gtgbnh&abc=45gbg
回源示例:https://www.volcengine.com/product/cdn?dfrfr=gtgbnh&abc=45gbg
若域名下所有资源的访问为格式:scheme://host/path?sign=md5(key+path+timestamp)&t=timestamp&query,回源格式为:scheme://host/path(?query),则可开启 D 类鉴权配置。

字段说明 :

  • scheme: 请求协议;
  • host:用户访问的加速域名;
  • timestamp :请求时间,格式为 YYYYMMDDHHMM,如 202107281500;
  • key :与 CDN 服务端约定的秘钥,主 KEY 与备 KEY 均可;
  • path :请求路径,从发起的请求中截取,以 "/" 开头;
  • sign:请求鉴权的参数,可自定义参数名。

开启 D 类型后,需要配置的内容如下:
alt

3.3.5 E 类鉴权示例

访问示例:https://www.volcengine.com/product/20210905/epcII9CC/922kb/hls/index.m3u8?wsSecret=86ffc1ab4e2c3f1e4e265e2354d1a250&wsTime=1669104515&abc=xFRVFg
回源示例:https://www.volcengine.com/product/20210905/epcII9CC/922kb/hls/index.m3u8?abc=xFRVFg
若域名下所有资源的访问为格式:scheme://host/path?sign=md5(key+path+timestamp+IP+UA)&t=timestamp&query,回源格式为:scheme://host/path(?query),则可开启 E 类鉴权配置。

字段说明 :

  • scheme: 请求协议;
  • host:用户访问的加速域名;
  • timestamp:请求时间,格式为 YYYYMMDDHHMM,如 202107281500;
  • key:与 CDN 服务端约定的秘钥,主 KEY 与备 KEY 均可;
  • path:请求路径,从发起的请求中截取,以 "/" 开头;
  • sign:请求鉴权的参数,可自定义参数名。

开启 E 类型后,需要配置的内容如下:
alt

3.4. 提升视频首播和流畅度

3.4.1 断点续传

视频传输过程中支持断点续传,可提升视频传输的速度。CDN 通过默认支持客户端 Range 请求的方式支持续传功能。

3.4.2 资源预热

域名配置完成后,可将新的资源通过预热操作提前将源站得文件预分发到 CDN 上,提升视频的首播时间和流畅度。

预热操作

  • 登录火山引擎 内容分发网络
  • 域名新增:在左侧导航栏,点击 刷新预热,进入文件预热。

预热可以选择手动输入 URL 和上传文件两种,单账号每日可提交的 URL 预热额度 1000 个。预热的URL需要通过换行符进行分隔。将需要预热的资源链接填充入对应位置,提交即可。如果域名有配置 URL 鉴权,在预热时提交的资源链接需要是解密后的 URL 。
image.png

在操作记录页面,可筛选历史提交的预热任务进行查看:

  • 执行中:提交的任务仍在处理中,请耐心等待
  • 已完成:任务已完成,全网已生效
  • 执行失败:任务执行遇到问题,若为预热任务,可能为源站响应异常导致,请检查源站是否能正常响应内容。

image.png

最近更新时间:2024.01.31 10:43:30
这个页面对您有帮助吗?
有用
有用
无用
无用