侧边栏壁纸
博主头像
いちごみるく

行动起来,活在当下

  • 累计撰写 70 篇文章
  • 累计创建 48 个标签
  • 累计收到 55 条评论

目 录CONTENT

文章目录

历史实验:Gcore CDN 转发 Bilibili 港澳台番剧 API

历史实验。 本文记录 2023 年借助 Gcore CDN 转发 Bilibili API 的结构。截图与地址段只对应当时环境,当前出口地区与番剧播放兼容性未经验证。

一、当时的配置过程

当时在 Gcore 新建 CDN 资源,源站填写 api.bilibili.com,接入域名填写自己的域名;将自定义域名按平台提供的 CNAME 接入,申请或配置对应 TLS 证书,回源协议使用 HTTPS。

2023 年 CDN 资源创建界面

2023 年源站填写界面

这里存在容易遗漏的四项:客户端访问的自定义域名、回源 HTTP Host、回源 TLS SNI 和证书校验对象。它们不能仅凭一个 Origin 输入框就认定一致。应在当前控制台分别核对这些配置,相关入口见 Gcore Host 配置文档;截图中的菜单位置不保证适用于新版控制台。

账号 API 还有缓存和授权问题:查询字符串要完整传递,需要的请求方法、请求体和账号头不能丢失;带用户身份的响应应避免跨用户缓存复用。把浏览器 Host 原样作为上游 Host 发送也可能导致源站错误。只有转发成功,不代表平台授予了地区/会员权限。

二、旧“台湾 IP 段”结论的限制

旧实验使用 92.223.76.0/24 并观察到部分播放可用。但分配登记位置、客户端连到的入口、CDN 回源出口和 Bilibili 的地理判断不是同一个概念;当前出口未经验证,不能把整个地址段视为固定台湾出口。

使用 http://IP:443/ 无法正确测试 HTTPS 服务:请求没有使用 TLS,也没有按目标域名提供 SNI/Host。若要诊断自己的 CDN 域名,应以 HTTPS 请求并保留域名,例如下面是文档保留地址的占位示例:

curl -v --resolve api.example.com:443:203.0.113.10 \
  https://api.example.com/

必须替换为有权管理的域名和真实测试 IP。测试证书/HTTP 返回仍不能证明当前内容授权;还需使用与客户端相同的 API 路径和参数检查业务响应。CDN IP 清单只能描述地址范围,不能证明地区播放能力。curl 官方文档说明了 --resolve 的用途。

三、脚本与公共服务

当时通过“解除 B 站区域限制”脚本的自定义服务器入口使用反代。脚本的登录授权与 Bilibili API 会变化,2023 年页面入口、UPOS 主机替换及旧截图都不能作为当前脚本安装说明。

2023 年脚本配置记录

自建服务仍需明确访问控制、日志保留和凭据处理,因为账号 Cookie/access token 会经过代理与 CDN。配置客户端前,应核对实际服务器的维护者、证书和数据处理方式,不直接使用来源不明的公共域名。

也不应在未验证证书和路由时,为一个域名混入 Gcore、CloudFront、Cloudflare 三家的地址。三个方案的配置与产品限制不同;相关历史记录见Workers和CloudFront。

当前是否适合继续部署,需要按实际账号、内容、协议与出口分别验证。

0

评论区