Azure CDN 管理门户使用指南

Azure 内容传送网络 (CDN) 通过遍布在中国大陆的众多物理节点上缓存Azure平台上的Storage Blob,Cloud Service和WebSites的静态内容,为开发人员提供一个传送高带宽内容的解决方案。目前本CDN服务也同时支持没有部署在Azure平台上的源站。

有关 Azure CDN 的详细信息和价格,请参阅 Azure CDN服务介绍

Azure CDN管理页面概览

本页面显示了您的CDN订阅账号的基本信息。

共有加速域名

当前Azure订阅下已经创建的加速域名的统计数字。

已启用加速域名

当前Azure订阅下目前处于启用状态的加速域名的统计数字。

当月总流量

当前Azure订阅下本月所有的加速域名使用的流量总和,单位是MB.

当月流量

当前Azure订阅下当月每天的流量信息,单位是MB。 如果您需要了更详细的流量信息,可以在左侧的导航窗格中单击 “流量报表”,进入流量统计报表页面。

当月带宽

当月每天的峰值带宽信息,单位是Kb/s。 如果您需要了解更详细的带宽信息,可以在左侧的导航窗格中单击 “带宽报表”,进入带宽统计报表页面。

域名管理

单击左侧导航窗格中 “域名管理”时,将显示当前Azure订阅下已经创建的所有CDN加速域名的列表视图。 你可以通过Azure订阅下拉列表选择不同的订阅查看不同订阅下的CDN加速域名信息。同时可以对加速域名进行“修改配置”“缓存规则配置”“访问控制管理”等操作。

加速域名列表视图

域名列表视图包括:

  • 加速域名,用于访问CDN缓存内容的域名,该域名必须有相应的ICP备案信息。
  • CDN 域名,由Azure CDN平台提供,都是以 .mschcdn.com结尾。
  • 源站地址,CDN所缓存内容的原始位置。
  • 加速类型 (目前支持“网站加速”,“下载加速”,“HTTP点播加速”和“流媒体直播加速”)
  • 状态,开启或者关闭(包括ICP审核,需要CNAME配置,禁用等非开启状态)

注意 您需要在CDN服务生效后(60分钟内),对你的加速域名配置CNAME映射信息,映射到微软提供的CDN域名。

注意 只有状态为开启的域名才可以正常使用CDN服务。

缓存规则配置视图

如上图,系统会根据缓存规则设置默认规则。用户可以根据需求加以调整。用户规则优先匹配,如果用户规则未命中,则逐条执行系统默认缓存规则。

缓存规则配置

用户点击“配置缓存规则”后,可以根据需求设置对域名的缓存规则,包括:

  • 根据目录进行配置

    目录必须以 "/" 开头,比如: "/pic", "/doc", "/htdoc/data" 等等。后台会匹配指定目录下的所有文件,包括子目录

  • 根据文件后缀配置

    常用文件后缀名,比如:"jpg", "png", "gif", "txt", "m4v", "mp3" 等等。后台会匹配 所有文件夹下 指定的文件后缀。

  • 根据全路径配置

    用来指定 一个文件,必须以 "/" 开头。比如:"/sites/doc/example.doc"。注意:如果用户填的全路径是"/",则它匹配首页。

注意 用户填写配置规则时,字符串中不要包含 “{”, “}”, “(”, “)”, “[”, “]”, “.”, “?", “*”, “\”, “^”, “$” 等特殊字符。

注意 时间填为0表示禁止缓存。

缓存配置顺序

系统根据配置顺序逐条匹配,最先配置的规则具有最高优先级。规则被匹配后,其后的规则不再被匹配。

预定义模板

用户可以通过 “应用预定义模板” 快速创建缓存配置规则。上图列出了用户选中“应用预定义模板”后,选择“常见文件”后创建的一个规则。用户可以根据需求对自动创建的规则进行修改。

禁止缓存设置

勾选“设置为禁止缓存”,则该加速域名将不会被缓存。

访问控制管理

通过访问控制管理,用户可以设置配置Referer黑白名单,从而实现防盗链。

当防盗链开启之后,便可以编辑外链规则。每条规则是一个路径和文件名的组合。比如/ *.png表示根目录下所有的png文件。

每条规则是一个路径和文件名的组合。比如/ *.png表示根目录下所有的png文件。

  • 如果设置了黑名单,那么当Referer在黑名单里面的时候,不允许访问,其他情况可以访问。
  • 如果设置了白名单,那么只有当Referer是白名单中的域名时,才可以访问 。

点击“提交”按钮之后,等待操作结束,会显示操作是否成功。如果点击“提交并关闭”按钮,那么对话框会立即关闭。当用户下次再打开对话框时,会显示上次操作的状态。

流量统计报表

你可以选择要查询的订阅(单选)、时间范围、加速域名(单个域名或全部),单击刷新按钮后界面将显示符合条件的流量统计报表,数据格式及含义请参见实际页面中的详细说明。

流量统计报表具有以下功能:

  • 有多个Azure 订阅的用户,可以查看单个订阅的流量以及回源流量统计。
  • 有多个加速域名的Azure订阅,可以查询单个加速域名流量(以及回源流量)统计结果和所有加速域名流量(以及回源流量)汇总。
  • 最小查询粒度精确到小时。
  • 提供多种查询时间范围。 用户可以查询最近24小时,昨天,今天,最近七天,最近十五天,最近三十天和上个月的流量统计。也可以选择查询某个特定的时间段的流量以及回源流量 (统计时间范围不超过九十天)。

带宽统计报表

选择要查询的订阅(单选)、时间范围、加速域名(单选和全部),单击刷新按钮后界面将显示符合条件的带宽统计报表,数据格式及含义请参见实际页面中的详细说明。

带宽统计报表具有以下功能:

  • 有多个Azure 订阅的用户,可以查询单个订阅的带宽统计和回源带宽统计。
  • 有多个加速域名的Azure订阅,可以查询单个加速域名带宽(以及回源带宽)统计结果和所有加速域名带宽(以及回源带宽)汇总。
  • 最小查询粒度精确到小时。
  • 显示带宽峰值出现时间。
  • 提供多种查询时间范围灵活选择。 你可以查询最近24小时,昨天,今天,最近七天,最近十五天,最近三十天和上个月的带宽统计。也可以选择查询某个特定的时间段的带宽(统计时间范围不超过九十天)。

缓存刷新

单击左侧导航窗格中“缓存刷新”,可以对指定的文件或者目录进行手动刷新。

缓存刷新列表视图

选择要查询的订阅(单选)、状态、时间范围、加速域名(单选),单击查询刷新结果后界面将显示符合条件的缓存刷新记录,数据格式及含义请参见实际页面中的详细说明。

缓存刷新列表视图包括:

  • 加速域名,用于访问CDN缓存内容的URL
  • 状态 (常见状态:成功,失败,刷新中)
  • 提交时间
  • 检测时间

如果缓存刷新规则提交成功,状态栏会显示成功字样。如果失败的话,需要检查的缓存刷新规则是否正确。如果有问题,需要重新创建并提交缓存刷新规则。

缓存刷新规则提交

既可以对单个文件,也可以对一个目录下的所有文件配置缓存刷新规则。

文件缓存刷新规则提交

此任务包括下列步骤:

  1. 单击 “提交文件刷新”按钮,进入文件刷新视图。
  2. 在“文件刷新”对话框中,从加速域名列表中选取你要配置的域名,输入相应文件路径。
  3. 你可以单击“+”增加新的规则,也可以单击“x”来删除对应的文件。
  4. 单击“提交”。

这样,新建的文件缓存规则就会显示在缓存刷新列表视图中。

注意 当加速域名尚未ICP验证通过时,无法进行文件刷新操作,加速域名下拉列表为空。请等待后台验证通过。

目录缓存刷新规则提交

此任务包括下列步骤:

  1. 单击 “提交目录刷新”按钮,进入目录刷新视图。
  2. 在“目录刷新”对话框中,从加速域名列表中选取你要配置的域名,输入相应目录路径。
  3. 你可以单击“+”增加新的规则,也可以单击“x”来删除对应的目录。
  4. 单击“提交”。

这样,新建的目录缓存规则就会显示在缓存刷新列表视图中

内容预取

单击左侧的导航窗格中 “内容预取”,可以对指定的文件进行内容预取和预取进度查询操作。

内容预取是指预先将指定URL的内容从源站缓存到CDN节点,这样可以消除用户第一次访问该资源时的等待时间。内容预取一般被用在进行大文件分发时的场景,可以有效的提升用户访问体验。

内容预取列表视图

可以选择要查询的订阅(单选)、状态、时间范围、加速域名(单选),单击查询预取结果后界面将显示符合条件的预缓存记录,数据格式及含义请参见实际页面中的详细说明。

内容预取列表视图包括:

  • 加速域名,用于访问CDN缓存内容的URL
  • 状态 (常见状态:成功,失败,进行中)
  • 提交时间

如果预缓存规则提交成功,状态栏会显示成功字样。如果失败的话,需要检查的预缓存规则是否正确。如果有问题,需要重新创建并提交预缓存规则。

预缓存规则提交

可以对单个文件或者多个文件配置预缓存。

此任务包括下列步骤:

  1. 单击 “提交预缓存加载”按钮,进入预缓存加载视图。
  2. 在“预缓存加载”对话框中,从加速域名列表中选取你要配置的域名,输入相应文件路径。
  3. 你可以单击“+”增加新的规则,也可以单击“x”来删除对应的文件。
  4. 单击“提交”。

这样,新建的预缓存加载规则就会显示在预缓存加载列表视图中。

日志下载

单击左侧的导航窗格中 “日志下载”,可以对指定的域名设置CDN原始日志下载相关参数。

日志下载视图

日志下载需要用户首先提供一个 Azure Storage Account 用以存放CDN日志,点击“下载设置”进行设置。

下载设置视图

在“下载设置”视图中,用户可以设置存储账号,以及需要下载日志的域名。设置完成后,系统会把搜集到的日志自动存放到指定的存储账号中。 用户可以删除存储账号以取消日志下载。

日志格式详解

日志以 blob 的形式存放在名为 "cdn-access-logs"的容器中。每个blob是一个GZip压缩后的CSV文件。其中每一栏的含义如下:

  • c-ip: 客户端IP地址
  • timestamp: 访问时间
  • cs-method: HTTP请求动作,如GET/HEAD等。
  • cs-uri-stem: 请求的URI
  • http-ver: HTTP协议版本
  • sc-status: HTTP状态码
  • sc-bytes: 服务器向客户端传送的字节数
  • c-referer:客户端Referer URI
  • c-user-agent:客户端User Agent标识
  • rs-duration(ms):完成请求花费的时间(单位毫秒)。
  • hit-miss:CDN缓存命中、丢失标识。
  • s-ip:生成日志的CDN边缘节点IP地址。

注意 如果CDN日志中未包括栏目内容,则相应记录标记为“-”,比如“c-referer”记录。此外,取决于边缘节点的日志配置,“rs-duration”、“hit-miss”、“s-ip”等记录也有可能为空。

注意 网站通过CDN加速后,其访问记录多数来源于CDN边缘节点。CDN回源时,会在HTTP Header X-Forwarded-For 中填入原始IP,源站的Web服务器可以修改日志配置该信息。如果用户需要知道客户端原始IP地址,可以参考以下信息。

以 Nginx 为例,其配置文件可以加入如下信息:

log_format logCDN '$remote_addr forwarded for $http_x_forwarded_for - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';

access_log /var/log/nginx/access.log logCDN;

服务检查

用户在创建CDN服务终节点后,可以在“服务检查”视图做一些基本的检查。我们强烈建议用户在CNAME操作之前,做一下服务检查。

如上视图,用户选择需要检查的域名后,提供一个源站可以访问的资源,然后点击“检查”。

  1. 源站正常 - 表明提供的资源可以访问;
  2. CDN部署完成 - 表明该域名对应的CDN服务已经部署;
  3. CDN缓存正常 - 表明通过源站访问的内容和通过CDN访问的内容一致(通过比较HTTP头:HTTP Status Code,Last Modified Time,Content Length)。

注意 服务检查功能不能保证该域名所处的所有CDN边缘服务器都没有异常。