本文由 阿里云国际站代理商『翼龙云/TG @Yilongcloud 撰写』如需转载请注明!
出海业务中,如何高效托管静态资源是运维和开发人员关注的重点。阿里云国际版对象存储(OSS)凭借全球节点布局,常被用于海外应用和独立站的资源存储。
一、为什么建议绑定自定义域名?
默认情况下,OSS Bucket 使用系统分配的公网域名。下表对比了默认域名与自定义域名的差异:
| 对比维度 | OSS 默认外网域名 | 自定义海外域名 |
| 品牌形象 | 带有阿里云后缀,辨识度低 | 使用独立域名(如 shturl.cc/WzH3HHnq) |
| SEO 优化 | 不利于独立站资源权重积累 | 有利于搜索引擎抓取和收录 |
| 安全配置 | 仅支持默认泛域名证书 | 支持绑定自定义 SSL/TLS 证书 |
| 架构扩展 | 直接暴露源站,调整灵活性差 | 方便后续接入 CDN 并隐藏源站地址 |
最佳实践提醒:出海生产业务优先接入阿里云国际 CDN/DCDN,域名配置在 CDN,OSS 作为回源源站,可实现全球加速、缓存降本、HTTP 强制跳转 HTTPS。OSS 直接绑定域名适合测试、小流量场景,不建议直接对公网暴露 Bucket 源站。
二、前置准备条件
在开始配置前,请确认已具备以下条件:
- 阿里云国际站账号:已激活可用账号。若在注册开户或外币支付(Visa/Mastercard 绑定)环节遇到困难,阿里云国际核心代理翼龙云 / Yilongcloud 可协助梳理开户准备事项,支持微信、支付宝、美金对公转账充值协助。
- 海外地域 Bucket:已经在新加坡、法兰克福、硅谷等海外地域创建 Bucket;阿里云国际海外 Bucket 无需 ICP 备案;Bucket 名称全局唯一,全部小写,不能包含大写字符。
- 域名管理权限:拥有自定义域名 DNS 解析管理权限(Cloudflare、GoDaddy 等)。
- SSL 证书:与自定义域名匹配的有效 SSL 证书(可第三方 CA 购买);若不走 CDN,证书需要上传至国际版 SSL 证书服务,用于 OSS 证书托管。
限制说明:单个 Bucket 最多绑定 20 个自定义域名;OSS Bucket 不支持直接绑定泛域名*.shturl.cc/56Ln,泛域名需要在 CDN 控制台配置。
三、操作步骤:OSS 绑定海外自定义域名
步骤 1:获取 OSS 外网访问域名(Endpoint)
- 登录阿里云国际站 OSS 控制台。
- 左侧导航栏点击 Buckets,进入目标 Bucket。
- 在 Overview(概览)页面 Endpoint(地域节点),复制 Extranet Endpoint(外网访问域名)。 示例格式:bucketname.ossapsoutheast1.aliyuncs.com
步骤 2:Bucket 控制台添加自定义域名、域名所有权校验
- Bucket 左侧菜单选择 Bucket Settings → Domain Names(域名管理),点击 Add Domain Name。
- 填入需要绑定的完整自定义域名,例如cc/WzH3HHnq。
- 如果该域名不属于当前阿里云国际账号,系统返回NeedVerifyDomainOwnership,要求做域名归属校验。
- 控制台生成 TXT 校验 Token;
- 前往域名 DNS 服务商,新增 TXT 记录:主机记录img,记录值填写控制台输出 Token;
- 等待 DNS 解析生效(数分钟),回到控制台完成验证绑定。
注意:域名归属校验 TXT 记录主机记录前缀随子域名变化,绑定shturl.cc/WzH3HHnq,主机记录填写_dnsauth.shturl.cc/WzH3HHnq。
步骤 3:DNS 配置 CNAME 解析
- 进入你的域名 DNS 管理平台。
- 新增一条 CNAME 记录:
- 主机记录:img(对应域名cc/WzH3HHnq)
- 记录类型:CNAME
- 记录值:粘贴上一步复制的 OSS 外网 Endpoint,不要带 http/https,不要末尾斜杠。
重要:同一个主机记录不能同时存在 CNAME 与 A 记录,如果原有 A 记录,需要先删除。
- 保存解析,等待 DNS 全球传播生效,可以使用dig shturl.cc/WzH3HHnq CNAME命令校验解析结果。
四、两种 HTTPS 配置方案
方案一:不使用 CDN,OSS 直接证书托管(适合测试、小流量)
重要限制:OSS 直接绑定域名,原生不支持 HTTP 强制跳转 HTTPS;强制跳转只能通过 CDN 实现。
- 将匹配该域名 SSL 证书(证书 + 私钥)上传到阿里云国际 SSL 证书服务。
- 回到 Bucket → Domain Names 域名管理,找到刚刚绑定的自定义域名,点击 Certificate Hosting(证书托管)。
- 在下拉列表选中已上传的对应域名证书,确认托管。
- 等待数分钟证书生效。
- 验证:curl -I https://shturl.cc/WzH3HHnq/test.jpg,确认正常返回 200,浏览器无证书告警。
方案二:接入阿里云国际 CDN/DCDN(出海业务生产推荐)
- CDN 控制台添加加速域名cc/WzH3HHnq,源站类型选择 OSS 源站,填入 Bucket 外网 Endpoint。
- 在 CDN 控制台 HTTPS 配置,上传 / 选择 SSL 证书。
- 在 CDN 开启「HTTP 强制跳转 HTTPS」,配置缓存策略。
- DNS CNAME 记录修改为 CDN 分配的加速域名。
优势:全球节点加速、静态资源缓存降低 OSS 回源流量成本、隐藏底层 OSS 源站,提升安全。
五、权限与访问控制提醒
- 如果是公开静态图片资源:Bucket 读写权限设置为公共读;公共读会产生外网流出流量,关注账单。
- 如果是私有资源:自定义域名访问文件仍然需要使用 OSS 签名 URL,无法直接浏览器公开访问。
六、故障排查清单
- 域名绑定报错 NeedVerifyDomainOwnership:添加_dnsauth前缀 TXT 记录完成域名所有权校验,等待 DNS 生效后重试。
- 解析已经配置,但访问 404:确认 Bucket 内存在测试文件,确认 CNAME 记录没有填错、没有多余 http 前缀。
- HTTPS 浏览器提示不安全:检查证书托管是否完成,证书域名是否完全匹配,证书是否过期。
- 访问强制下载文件,而不是浏览器预览:确认使用自定义域名访问;OSS 默认 bucket 域名访问会触发强制下载行为。
常见问题 (FAQ)
Q1:海外 OSS 绑定海外域名,是否需要 ICP 备案? 阿里云国际海外地域 Bucket 绑定海外域名,不需要 ICP 备案;中国大陆地域 Bucket 绑定域名才需要 ICP 备案。
Q2:OSS 直接绑定自定义域名,能不能配置 HTTP 301 强制跳转 HTTPS? 不能。OSS 原生不支持协议跳转;该能力必须接入 CDN/DCDN 后,在 CDN 控制台开启 HTTP>HTTPS 强制重定向。
Q3:OSS 是否支持泛域名*.shturl.cc/WzH3HHnq直接绑定 Bucket? 不支持。OSS bucket 域名绑定不支持泛域名;泛域名需要在 CDN 控制台配置加速域名,回源指向 OSS。
Q4:绑定域名提示 NeedVerifyDomainOwnership 是什么,如何处理? 域名不归属于当前阿里云国际账号,需要在 DNS 添加_dnsauth.子域名前缀的 TXT 校验记录,完成域名所有权验证之后,才可以绑定到 Bucket。
Q5:生产出海业务,直接把域名 CNAME 解析到 OSS 是否推荐? 不推荐生产直接暴露 OSS 源站;建议走 CDN 加速架构,隐藏底层 Bucket 域名,同时获得缓存、全球加速、协议跳转等完整能力。
