惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
人人都是产品经理
人人都是产品经理
Cisco Talos Blog
Cisco Talos Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
D
Docker
S
SegmentFault 最新的问题
博客园 - 聂微东
美团技术团队
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
GbyAI
GbyAI
L
LangChain Blog
Vercel News
Vercel News
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
T
Threat Research - Cisco Blogs
T
Threatpost
Scott Helme
Scott Helme
T
Tailwind CSS Blog
Latest news
Latest news
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
The Register - Security
The Register - Security
罗磊的独立博客
P
Proofpoint News Feed
腾讯CDC
S
Schneier on Security
雷峰网
雷峰网
A
About on SuperTechFans
T
Tenable Blog
F
Full Disclosure
Cyberwarzone
Cyberwarzone
博客园_首页
有赞技术团队
有赞技术团队
K
Kaspersky official blog

文章列表

五一浪荡 春色怡人 冬日印象 蜜月之旅 2025 回忆上学三两事(二) 秋尾闲游 我们所需要的婚礼 关于校园恋爱的思考 回忆上学三两事(一) 问答分享:有个妹妹是种什么体验 月全食人生首拍 尼康新手人像初拍 基于腾讯云COS自动生成相册 回忆找工作三两事 更换busuanzi统计服务记录 文章页面默认头图透明调整记录 Github Actions与EdgeOne自动化刷新 第一次拍月亮记录
源站域名和回源HOST头理解及个人实践
Sun Boy · 2025-08-17 · via

写前哔哔

最近在配置时CDN时总会遇到源站域名和回源 Host 头,尤其是当回源 Host 头设置为源站域名时更是傻傻分不清,今天一定要狠狠地搜索一波,以下内容部分来自豆包。

一、核心定义与作用区别

1. 源站域名(CDN 的 “目标服务器地址”)

  • 定义:CDN 节点要 “物理连接” 的服务器域名(或 IP),即实际存储你的网页资源的服务器地址(例如你的 EO Pages 源站域名 yourdomain.pages.eo.tencentcloud.com)。
  • 作用:解决 “CDN 节点该连接哪台服务器” 的问题。
    类比:相当于你寄快递时的 “收件人地址”(比如 “XX 市 XX 路 XX 号”),确保快递能送到正确的建筑物。

2. 回源 Host 头(CDN 的 “访问目标标识”)

  • 定义:CDN 节点连接到源站服务器后,在 HTTP/HTTPS 请求中携带的 Host 字段(例如 yourdomain.pages.eo.tencentcloud.com)。
  • 作用:解决 “连接到服务器后,要访问这台服务器上的哪个具体站点” 的问题。
    类比:相当于你到了 “XX 市 XX 路 XX 号” 这个建筑物后,告诉门卫 “我要找 301 室的住户”,确保能找到具体的人。

二、为什么必须同时配置?

源站服务器(尤其是 EO Pages 这类云服务的源站)通常是 “多站点共享一台 / 一组服务器” 的模式 —— 即一台服务器上可能同时托管成百上千个用户的站点。此时:

  • 仅配置源站域名:CDN 节点能正确连接到源站服务器(相当于快递到了建筑物),但服务器不知道你要访问它上面的哪个站点(不知道找 301 室还是 502 室),可能返回错误或默认页面。
  • 仅配置回源 Host 头:CDN 节点不知道该连接哪台服务器(快递不知道往哪个地址送),更无法发起请求。

三、特殊场景:两者可能相同,但逻辑不同

在很多情况下,源站域名和回源 Host 头会填写相同的域名(例如都填 yourdomain.pages.eo.tencentcloud.com),但这只是 “值相同”,而非 “作用相同”:

  • 源站域名是 “网络层” 的连接目标(告诉 CDN 节点 “连哪里”)。
  • 回源 Host 头是 “应用层” 的访问标识(告诉服务器 “取什么”)。

甚至在某些场景下,两者必须不同:
例如,若源站用 IP 地址(如 1.2.3.4)作为源站域名,此时回源 Host 头必须填写你的 EO Pages 源站域名(yourdomain.pages.eo.tencentcloud.com)—— 因为服务器需要通过 Host 头识别站点,而 IP 地址无法直接关联到具体站点。

总结

  • 源站域名:解决 “CDN 节点连接哪台服务器” 的问题(网络层)。
  • 回源 Host 头:解决 “连接后访问服务器上哪个站点” 的问题(应用层)。

回源 Host 使用加速域名和源站域名的区别

一、核心定义与请求链路差异

1. 回源 Host 使用加速域名

  • 定义:加速域名是 CDN 分配给用户的访问入口(如 cdn.example.com),用户直接通过该域名访问资源。若回源 HOST 填写加速域名,CDN 节点会在回源请求中携带 Host: cdn.example.com
  • 请求链路
    1. 用户访问:用户通过 cdn.example.com 发起请求。
    2. CDN 节点处理:若节点未缓存资源,CDN 节点向源站请求资源,此时请求头的 Host 字段为 cdn.example.com
    3. 源站响应
      • 若源站未配置加速域名:源站无法识别 cdn.example.com,可能返回 404 错误或默认站点内容。
      • 若源站配置了加速域名:源站正常返回资源,但此时加速域名需同时在源站和 CDN 中配置,可能导致解析闭环(例如加速域名通过 CNAME 指向 CDN 节点,而 CDN 节点又回源到该域名,形成无限循环)。

2. 回源 Host 使用源站域名

  • 定义:源站域名是实际存储资源的服务器域名(如 origin.example.com),由云服务提供商(如 EO Pages)分配。若回源 HOST 填写源站域名,CDN 节点会携带 Host: origin.example.com
  • 请求链路
    1. 用户访问:用户通过 cdn.example.com 发起请求。
    2. CDN 节点处理:未命中缓存时,CDN 节点向源站域名 origin.example.com 发起请求,携带 Host: origin.example.com
    3. 源站响应:源站根据 Host 头直接匹配到对应的站点资源,正常返回内容。

二、关键区别与风险对比

维度 回源 HOST 使用加速域名 回源 HOST 使用源站域名
源站识别逻辑 源站需配置加速域名才能正确响应,否则可能返回 404 或默认内容。 源站默认配置源站域名,直接匹配站点资源,无需额外配置。
解析闭环风险 加速域名通常通过 CNAME 指向 CDN 节点,若回源 HOST 使用加速域名,CDN 节点可能再次解析到自身,形成无限循环。 源站域名直接指向真实服务器 IP,避免 CDN 内部解析闭环。
适用场景 仅在源站明确配置了加速域名(如自建源站同时托管加速域名和源站域名)时可用。 适用于绝大多数场景,尤其是云服务提供商(如 EO Pages)的源站默认仅配置源站域名的情况。
CDN 性能影响 若源站未配置加速域名,CDN 节点可能需要多次重定向或返回错误,增加响应延迟。 直接命中源站配置,响应效率更高。
配置复杂度 需同时在 CDN 和源站配置加速域名,且需确保 DNS 解析链不冲突。 只需在 CDN 配置源站域名,无需额外操作。

总结

回源 HOST 使用加速域名和源站域名的本质区别在于:前者依赖源站对加速域名的额外配置,且存在解析闭环风险;后者直接匹配源站默认配置,是云服务场景下的最佳实践。

EO CDN个人配置实践

搭配方案

情况编号 加速域名 源站域名(CDN 配置的源站地址) 回源 HOST 头使用的值 自定义域名(EO Pages 绑定的域名) 访问结果
情况 1 www.sunboy.ltd blogggg-e3d9muwx.edgeone.run(EO 默认生成) 加速域名 www.sunboy.ltd 有(www.sunboy.ltd) 正常访问
情况 2 www.sunboy.ltd blogggg-e3d9muwx.edgeone.run(EO 默认生成) 加速域名 www.sunboy.ltd 正常访问
情况 3 www.sunboy.ltd blogggg-e3d9muwx.edgeone.run(EO 默认生成) 源站域名 blogggg-e3d9muwx.edgeone.run 404
情况 4(推荐) www.sunboy.ltd blog.sunboy.ltd 源站域名 blog.sunboy.ltd 有(blog.sunboy.ltd) 正常访问

情况3访问失败原因分析:默认源站域名(如 blogggg-e3d9muwx.edgeone.run):仅用于 EO Pages 的初始测试或内部转发,源站服务器未将其配置为有效 HOST 头,因此回源时无法匹配到站点资源。

最后叨叨

个人纯小白,全程豆包搜索,仅做个人成功案例分享,大佬勿喷。