Skip to content

阿里云OSS静态网站托管

你也可以阅读 官方文档

引言

当您使用阿里云OSS(对象存储服务)托管静态网站时,默认会分配一个OSS提供的访问域名(例如 yourbucket.oss-cn-hangzhou.aliyuncs.com)。然而,专业的网站通常需要使用自定义域名(例如 www.yourcompany.com)来提升品牌形象和用户体验。

本指南旨在详细阐述如何将您的自定义域名绑定到OSS静态网站,并配置DNS解析,最终实现通过您自己的域名访问您的网站。

前置条件

在开始配置之前,请确保您已完成以下准备工作:

  • 阿里云OSS Bucket:已创建并拥有一个OSS Bucket
  • 静态网站托管已启用:您的OSS Bucket已启用"静态网站托管"功能
  • 网站文件已上传:您的静态网站文件(如 index.htmlcssjs 等)已上传至您的OSS Bucket,并且默认首页文件(通常是 index.html)已正确设置
  • 有效域名:您已拥有一个在阿里云或其他域名服务商处注册并实名认证的有效域名,并且通过了备案

规范

最佳实践是一个Bucket对应一个域名。切勿在一个桶内放置多个网站。

整体流程图

以下是配置自定义域名访问OSS静态网站的核心步骤概览:

详细操作步骤

步骤一:在OSS控制台绑定自定义域名

  1. 登录阿里云OSS控制台: 访问 https://oss.console.aliyun.com/ 并使用您的阿里云账号登录。

  2. 选择目标Bucket: 在左侧导航栏选择 "Buckets",然后点击您要配置的静态网站所在的Bucket名称。

  3. 静态页面配置: 在左侧导航栏选择 "数据管理 - 静态页面",填入默认首页 index.html

    n30dhg6EyLsR

  4. 进入"域名管理": 在Bucket概览页面的左侧导航栏中,找到并点击 "Bucket配置" -> "域名管理"

    b53uMBhILsXl

  5. 绑定用户域名: 在"域名管理"页面,点击 "绑定域名" 按钮。

    • 在弹出的对话框中输入您的自定义域名(例如 www.yourcompany.comblog.yourcompany.com
    • 点击 "确定"

    3NH3m46AI16E

    (DNS验证)

    qeLiguScU7VF

    (域名解析记录)

提示

如果您的DNS解析和OSS不是同一个账号,可能需要额外添加一条 _dns 验证记录,参见上图DNS验证截图。

重要提示

输入域名后,系统会生成一个对应的CNAME记录值(例如 yourbucket.oss-cn-hangzhou.aliyuncs.com)。请务必复制并保存这个CNAME值,后续在域名服务商处配置DNS解析时需要用到。

步骤二:在域名服务商处配置DNS CNAME解析

此步骤是将您的自定义域名指向OSS提供的CNAME地址,从而实现通过自定义域名访问您的网站。

  1. 登录您的域名服务商控制台: 无论是阿里云的云解析DNS还是其他域名服务商(如腾讯云、GoDaddy等),请登录其DNS管理界面。

  2. 进入域名解析设置: 找到您要配置的域名,点击"解析设置"或"DNS管理"等入口。

  3. 添加解析记录

    • 记录类型:选择 CNAME
    • 主机记录(RR)
      • 如果您想将 www.yourcompany.com 指向OSS,输入 www
      • 如果您想将 blog.yourcompany.com 指向OSS,输入 blog
      • 如果您想将 yourcompany.com(根域名)直接指向OSS,通常输入 @。但请注意:根域名配置CNAME可能会限制同时配置其他类型的记录(如MX记录),因此对于静态网站,推荐使用 www 或其他子域名进行CNAME绑定
    • 解析值:粘贴您在步骤一中从OSS复制的CNAME记录值(例如 yourbucket.oss-cn-hangzhou.aliyuncs.com
    • TTL(生存周期):选择默认值即可,通常为10分钟或600秒,或者根据您的需求设置。TTL表示DNS记录在DNS缓存服务器上的存活时间

    yTQN7rEYUriy

    (参考截图)
  4. 保存并等待生效: 保存解析记录。DNS解析记录的生效时间因域名服务商和TTL设置而异,通常在几分钟到几小时内完全生效。

步骤三:在OSS控制台配置HTTPS(SSL证书)

为了网站安全和用户信任,强烈建议为您的自定义域名配置HTTPS加密访问。

  1. 回到OSS控制台: 进入您Bucket的 "域名管理" 页面。

  2. 配置HTTPS: 在已绑定的自定义域名右侧,点击 "HTTPS配置"

    • 选择证书
      • 如果您已有SSL证书(PEM格式):选择"上传证书",粘贴您的证书内容和私钥
      • 如果您在阿里云SSL证书服务购买了证书:选择"云盾证书",可以直接选择您已有的证书
    • 强制HTTPS(可选但推荐):勾选"强制HTTPS",这将把所有HTTP请求自动重定向到HTTPS
    • 点击 "确定" 完成配置
  3. 等待生效: HTTPS配置通常会在几分钟内生效。

验证与测试

配置完成后,您需要验证自定义域名是否成功指向了您的OSS静态网站。

  1. 使用 pingnslookup 命令: 打开您的电脑终端(Windows的CMD或PowerShell,macOS/Linux的Terminal),输入以下命令:

    bash
    ping www.yourcompany.com

    bash
    nslookup www.yourcompany.com

    观察返回的IP地址或别名是否与OSS相关(例如,yourbucket.oss-cn-hangzhou.aliyuncs.com 的IP地址)。如果 nslookup 返回的CNAME记录指向了您在OSS获取的域名,则说明DNS解析已生效。

  2. 直接在浏览器中访问: 在您的浏览器中输入您的自定义域名(例如 https://www.yourcompany.com)。如果能够正常显示您的网站内容,则说明配置成功。

  3. 检查HTTPS(如果已配置): 浏览器地址栏应显示"安全"或带锁图标,表示网站通过HTTPS安全连接。

常见问题与提示

  • DNS解析时间:DNS解析完全生效需要时间,请耐心等待。您可以使用 DNS查询工具 查看全球DNS服务器的解析传播情况
  • 缓存问题:如果DNS解析已生效但浏览器仍然无法访问,可能是浏览器或本地DNS缓存导致,尝试清除浏览器缓存或更换网络环境后重试
  • 域名备案:在中国大陆地区,使用自定义域名访问网站(包括OSS托管的静态网站)通常需要进行域名备案。未备案的域名可能无法正常访问
  • 404错误:如果您访问自定义域名出现404错误,请检查以下几点:
    • 是否已正确启用OSS静态网站托管功能
    • 默认首页文件(如 index.html)是否已上传到Bucket根目录,并且文件名称与静态网站托管设置中的默认首页名称一致
    • 文件权限是否正确(通常设置为公共读)
    • 对于单页面应用(SPA),可能需要额外配置OSS的路由规则,将所有路径重定向到 index.html
  • 证书过期:如果配置了HTTPS,请定期检查并更新您的SSL证书,以避免证书过期导致网站无法访问

总结

通过本指南,您已成功将自定义域名绑定到阿里云OSS静态网站,并配置了DNS解析和HTTPS访问,使您的网站更具专业性和安全性。记住,耐心等待DNS解析和HTTPS证书的生效是关键。