更新时间:2022-08-16 GMT+08:00

使用自定义域名托管静态网站

OBS支持通过自定义域名访问托管在OBS上的静态网站。本节将以一个具体场景作为示例,帮助您了解如何使用自定义域名配置静态网站托管。在此之前,您可能需要了解一些关于OBS静态网站托管的基本概念及操作,详情请参阅配置静态网站托管

场景介绍

企业A有大量静态网站文件需要存档,但并不希望花费大量的人力、物力在存储资源上。因此该企业开通了OBS对象存储,用于托管静态网站,并希望使用自定义域名让该企业下的用户访问这些静态资源,如图1所示。

图1 使用自定义域名访问静态网站示意图

操作流程

您需要先在OBS管理控制台上创建一个桶,用于存放静态网站资源,并启用该桶的静态网站托管,然后通过云解析服务(DNS,Domain Name Service)创建和配置域名托管。具体操作流程如下:

  1. 注册域名
  2. 创建桶
  3. 上传静态网站文件
  4. 在OBS上配置静态网站托管
  5. 绑定自定义域名
  6. 创建和配置域名托管
  7. 验证

数据规划

执行配置操作前,需要提前规划如表1所示的数据。

表1 数据规划

规划项

说明

示例

自定义域名

用户自己的域名地址。

www.example.com

静态网站首页

访问静态网站时返回的索引页面,即首页。

index.html

404错误页面

当访问错误的静态网站路径时,返回的404错误页面。

error.html

  • index.html的内容为:
    <html>
      <head>
          <title>Hello OBS!</title>
          <meta charset="utf-8">
      </head>
      <body>
          <p>欢迎使用OBS静态网站托管功能</p>
          <p>这是首页</p>
      </body>
    </html>
  • error.html的内容为:
    <html>
      <head>
          <title>Hello OBS!</title>
          <meta charset="utf-8">
      </head>
      <body>
          <p>欢迎使用OBS静态网站托管功能</p>
          <p>这是404错误页面</p>
      </body>
    </html>

操作步骤

  1. 注册域名。

    如果您拥有一个已注册的域名,可跳过本步骤。

    如果您还没有,请选择一个合适的注册商注册一个属于自己企业的域名。在本场景下,以数据规划中的示例域名www.example.com进行注册,在实际操作中,您需要将此域名替换为您自己规划的域名。

  2. 创建桶。

    桶名没有特殊要求,您只需要按照界面提示的命名规则创建一个桶用于存储静态网站文件。此处以创建一个桶名称为example的桶为例,其具体操作步骤如下:

    1. 打开OBS管理控制台。
    2. 在页面上方单击“创建桶”。
    3. 在弹出的对话框中配置以下参数。
      • “区域”:根据就近原则选择离业务较近的区域。
      • “桶名称”:输入“example”。
      • “存储类别”:推荐选择“标准存储”。

        您也可以根据网站的访问频率以及对响应速度的要求,选择“温存储”或“冷存储”。存储类别具体介绍请参见存储类别简介

      • “桶策略”:选择“公共读”使桶内对象能够被任何用户访问。
      • “默认加密”:选择“关闭”。
    4. 单击“立即创建”,完成桶创建。

  3. 上传静态网站文件。

    整理好待上传的静态网站文件,执行以下步骤,将所有的静态网站文件都上传至桶example中。

    1. 单击桶example的桶名称,进入桶概览页面后在左侧导航栏单击“对象”。
    2. 单击“上传对象”。
    3. 拖拽本地准备好的静态网站文件至“上传对象”区域框内添加待上传的文件。

      也可以通过单击“上传对象”区域框内的“添加文件”,选择本地文件进行添加。

      • 不可加密上传静态网站文件。
      • 网站首页文件(index.html)和404错误页面(error.html),需要存放在桶的根目录下。
      • 存储类别建议选择“标准存储”。如果静态网站文件的存储类别为“冷存储”,则需要先恢复才能被访问,具体操作步骤请参见恢复冷存储文件
    4. 单击“上传”完成文件上传。

  4. 配置静态网站托管。

    上传完静态网站文件后,您需要执行以下步骤,将当前桶设置为静态网站托管模式。

    您也可以将整个静态网站直接重定向至另一个桶或域名,配置操作请参见配置重定向请求

    1. 单击桶example的桶名称,进入桶概览页面。
    2. 在左侧导航栏单击“基础配置 > 静态网站托管”,进入“静态网站托管”页面。
    3. 单击“配置静态网站托管”,系统弹出“配置静态网站托管”对话框。
    4. “状态”设置为使能状态。
    5. “托管模式”选择“配置到当前桶”。

      您也可以根据业务需求配置重定向规则,实现网站内容重定向,具体操作请参见配置静态网站托管

    6. “默认首页”配置为数据规划中的index.html,“默认404错误页面”配置为数据规划中的error.html。
    7. 单击“确定”。

  5. 绑定自定义域名

    通过OBS绑定自定义域名的操作步骤如下:

    1. 单击桶example的桶名称进入“概览”页面,在左侧导航栏选择“域名管理”。
    2. 单击“绑定用户域名”,在“用户域名”输入“www.example.com”。
    3. 单击“确定”,完成自定义域名绑定。

  6. 创建和配置域名托管。

    为了方便对您的自定义域名和静态网站统一管理,实现业务全面云化,您可以直接在云解析服务(DNS,Domain Name Service)上托管您的自定义域名。托管完成后,后续域名解析的管理都可以在云解析服务上进行,包括:管理记录集、管理反向解析、设置域名泛解析等等。

    您也可以直接在域名注册商域名解析中添加一条别名记录,指向对象存储桶的静态网站域名。

    使用云解析服务创建和配置域名托管的操作步骤如下:

    1. 创建公网域名。

      在云解析服务中创建公网域名,使用步骤1中注册的根域名“example.com”作为创建的公网域名的“名称”。详细的创建方法请参见《云解析服务用户指南》中“配置网站解析”章节中的“添加域名”部分内容。

    2. 添加别名记录。

      在云解析服务中为托管域名子域名“www.example.com”添加记录集,配置该子域名别名指向OBS的静态网站托管域名。在添加别名记录时参数配置如下:

      • “主机记录”:输入“www”。
      • “类型”:选择“CNAME-规范名称记录”。
      • “线路类型”:选择“全网默认”。
      • “TTL(秒)”:保持默认。
      • “值”:需指向的域名,即OBS桶example的静态网站托管域名。

      详细的创建方法请参见《云解析服务用户指南》中“增加CNAME类型记录集”章节。

    3. 在域名注册商处修改域名解析服务器地址。

      在域名注册商处,将该根域名对应的NS记录中域名解析服务器地址修改为云解析服务(DNS)服务器的地址,具体地址为云解析服务中该公网域名记录集中NS记录的值字段内容信息。

      详细的更改域名解析服务器地址的方法请参见《云解析服务用户指南》中“配置网站解析”章节中的“更改域名的DNS服务器”部分内容。

      更改后的域名解析服务器地址将于48小时内生效,具体生效时间请以域名注册商处的说明为准。

  7. 验证。

    • 在浏览器中输入访问地址:www.example.com,验证能否访问到配置的默认首页,如图2所示。
      图2 默认首页
    • 在浏览器中输入一个桶中不存在的静态文件访问地址,例如:www.example.com/imgs,验证能否访问到配置的404错误页面,如图3所示。
      图3 404错误页面

    由于浏览器缓存等原因,您可能需要清除浏览器缓存后才能查看到预期效果。

网站更新操作

后续如果需要对网站某个静态文件(如:图片、音乐、html文件、css文件等)进行更新,用户可以重新上传该静态文件。

默认情况下,在OBS同一路径下新上传的文件会覆盖OBS上已存在的同名文件。为避免文件覆盖的情况,用户可以选择启用OBS的多版本控制功能。利用多版本控制,用户便可以保留静态文件的多个版本,使您更方便地检索和还原各个版本,在意外操作或应用程序故障时快速恢复数据。关于多版本控制的更多介绍以及操作指导,请参见多版本控制简介