您的文件(Object)上传到阿里云OSS的存储空间(Bucket)后,会自动生成该文件的访问地址,您可以使用此地址访问存储空间内的文件。若您希望通过自定义域名访问这些文件,需要将自定义域名绑定到文件所在的存储空间,并添加CNAME记录指向存储空间对应的外网域名。

注意
  • 按照中华人民共和国《互联网管理条例》的要求,所有需要绑定自定义域名的用户,必须提前将域名在工信部备案。若您的域名未备案,您可通过阿里云提供的备案服务进行备案。
  • 每个存储空间最多可以绑定100个域名;一个域名只能绑定在一个存储空间上;每个账号可绑定的域名个数无限制。

相关概念

绑定自定义域名,您需要了解以下概念:
  • 用户域名/自定义域名/自有域名:您在域名服务商处购买的域名。
  • OSS域名或Bucket域名:OSS为您的Bucket分配的访问域名。您可以使用此域名访问您Bucket内的资源。如果您想使用您自己的用户域名访问OSS Bucket,必须将您的用户域名绑定到OSS域名,并添加CNAME记录。
  • 传输加速域名:开启传输加速服务后,OSS为Bucket分配的传输加速访问域名。使用此域名可以加速访问您Bucket内的资源,特别适合跨国、跨大陆间超长距离的数据上传、下载场景。详情请参见传输加速

适用场景和流程解析

例如用户A拥有一个域名为img.example.com的网站,网站的一个图片链接为http://img.example.com/logo.png。为方便后续管理,用户A想要将访问网站中图片的请求转到OSS,并且不想修改任何网页的代码,也就是对外链接不变。绑定自定义域名可以满足此需求。流程如下:

  1. 在OSS上创建一个名为example-img的存储空间,并将其网站上的图片上传至该存储空间。
  2. 通过OSS控制台,将img.example.com这个自定义的域名绑定在存储空间example-img
  3. 绑定成功之后,OSS后台会将img.example.com做一个映射到存储空间example-img
  4. 在自己的域名服务器上,添加一条CNAME规则,将img.example.com映射成example-img.oss-cn-hangzhou.aliyuncs.com(即example-img的OSS域名)。
  5. http://img.example.com/logo.png 请求到达OSS后,OSS通过img.example.comexample-img的映射关系,将访问转到example-img这个存储空间。也就是说,对http://img.example.com/logo.png的访问,实际上访问的是http://example-img.oss-cn-hangzhou.aliyuncs.com/logo.png

绑定自定义域名前后流程对比如下:

绑定自定义域名前 绑定自定义域名后
  1. 访问http://img.example.com/logo.png
  2. DNS解析到用户服务器IP。
  3. 访问用户服务器上的logo.png。
  1. 访问http://img.example.com/logo.png
  2. DNS解析到example-img.oss-cn-hangzhou.aliyuncs.com
  3. 访问OSS上example-img里的logo.png

操作方式

操作方式 说明
控制台 Web应用程序,直观易用
PHP SDK 丰富、完整的各类语言SDK demo
Node.js SDK
Browser.js SDK
Ruby SDK

相关参考