配置默认回源HOST

CDN在发起回源请求时携带的HOST请求头默认为加速域名,您可使用本功能自定义回源HOST请求头。

背景介绍

当您有多个加速域名,每个加速域名负责加速不同静态的资源,常见的做法是开发多个源站支持不同加速域名发起回源请求资源。

image

如果加速域名比较多,回源流量很少时,重复建站会带来资源的极度浪费,您可通过虚拟站点技术解决该问题。

虚拟站点技术

虚拟站点技术是一种在单个Web服务器上提供多个网站服务的技术。服务器通过使用不同的域名或主机名来区分和隔离不同的网站。当用户请求访问某个特定的域名或主机名时,服务器会根据请求的域名或主机名,将请求定向到相应的虚拟站点,从而提供相应的网站内容。示意图如下:

image

Nginx相关实现

Nginx支持通过server区块配置多个虚拟站点,示例如下:

server {
    listen      80;
    server_name example.org www.example.org;
    ...
}

server {
    listen      80;
    server_name example.net www.example.net;
    ...
}

server {
    listen      80;
    server_name example.com www.example.com;
    ...
}

项目配置了3个虚拟站点,分别是example.orgexample.netexample.com。Nginx优先在HTTP请求头中查找HOST字段以确定请求需要路由到的虚拟站点,如果没有匹配到任何一个虚拟站点,Nginx会使用默认的虚拟站点提供服务(若未配置,默认为第一个server配置为默认站点)。

默认回源HOST

当您访问一个URL链接时,不指定HOST字段,该请求的HOST字段默认为您访问URL链接的主机+端口部分。但是CDN默认将HOST字段设置为加速域名,您也可以根据您源站的虚拟站点配置,自定义HOST字段的默认值。

重要

您的源站服务器需支持通过HOST请求头匹配不同的虚拟站点,否则该功能配置无法达到预期的功能效果。

操作步骤

  1. 登录CDN控制台

  2. 在左侧导航栏,单击域名管理

  3. 域名管理页面,找到目标域名,单击操作列的管理

  4. 在指定域名的左侧导航栏,单击回源配置

  5. 默认回源HOST区域,单击修改配置

  6. 打开回源HOST开关,选择域名类型

    回源配置

    参数

    说明

    加速域名

    以终端用户访问的加速域名作为回源HOST。

    源站域名

    以源站服务器的域名作为回源HOST。

    说明
    • 源站信息为IP地址类型时,源站域名选项置灰,不可选择。

    • 源站信息为OSS域名时,将会同步开启回源HOST功能,并且设置域名类型为源站域名

    自定义域名

    以用户指定的域名作为回源HOST。

    说明
    • 自定义域名确保为您已经绑定的域名,否则回源失败。

    • 您的源站绑定了多个域名,您希望用户从指定域名获取资源。

  7. 单击确定

配置示例

示例一:当源站类型为域名。

域名

说明

加速域名:

image.example.com

源站地址:

source.example.com

功能默认关闭。您可主动开启默认回源HOST功能。

回源域名类型说明:

  • 加速域名:当CDN回源时,会到source.example.com源站上的image.example.com的虚拟站点获取资源。

  • 源站域名:当CDN回源时,会到源站source.example.com获取资源。

  • 自定义域名:回源HOST为用户输入的自定义域名。

示例二:当源站类型为IP地址。

域名

说明

加速域名:

example.com

源站地址:

10.10.10.10

功能默认关闭。您可主动开启默认回源HOST功能。

回源域名类型说明:

  • 加速域名:当CDN回源时,会到10.10.10.10这台主机上的example.com的虚拟站点获取资源。

  • 源站域名:源站信息为IP地址类型时,源站域名选项置灰,不可选择。

  • 自定义域名:当CDN回源时,会到10.10.10.10这台主机上自定义域名的虚拟主机获取资源。

示例三:当源站类型为OSS域名。

域名

说明

加速域名:

example.com

源站地址:

example.oss-cn-hangzhou.aliyuncs.com

当源站信息为OSS域名时,CDN将会同步开启回源HOST功能,并且设置域名类型为源站域名

回源域名类型说明:

  • 加速域名:当CDN回源时,会到example.oss-cn-hangzhou.aliyuncs.comOSS域名上的example.com站点获取资源。

  • 源站域名:当CDN回源时,会到OSS域名example.oss-cn-hangzhou.aliyuncs.com获取资源。

  • 自定义域名:当CDN回源时,会到您的example.oss-cn-hangzhou.aliyuncs.com站点上自定义域名的虚拟站点获取资源。