静态网站设置

最近更新时间:2018-10-26 12:23:49

基本概念

通过配置存储桶,用户可以在腾讯云 COS 上托管静态网站(仅限自定义域名的存储桶,详细信息请参阅 配置自定义域名) 文档。
静态网站是指只包含静态内容(如 HTML)或客户端脚本的网站,而动态网站的内容包含诸如 PHP、JSP 或 ASP.NET 等服务器端脚本,依赖服务器端处理。
腾讯云 COS 支持静态网站的托管,不支持服务器端脚本编写。当需要部署动态网站时,请使用腾讯云云服务器 CVM 进行服务端代码部署。
在进行静态网站设置之前,需将网站内容上传到存储桶,并为存储桶绑定自定义域名。

设置步骤

  1. 登录 对象存储控制台 ,进入左侧菜单栏【 Bucket 列表】,单击需要设置静态网站的存储桶(如 example),进入存储桶。
    访问权限1
  2. 单击【基础配置】,找到静态网站设置,单击【编辑】按钮,进入可编辑状态。
    静态网站1
  3. 修改当前状态为开启,开启 Index 索引(可选),开启指定的 HTTP 状态码并设置指向文件(可选),设置完成单击【保存】即可。
    静态网站2

配置说明

静态网站功能

静态网站设置帮助用户设置对象的打开方式。开启此功能时,使用自定义域名访问对象会默认使用浏览器打开,不需要下载对象到本地。

静态网站设置仅在用户为存储桶设置了自定义域名时有意义,使用默认提供的域名( CDN 加速域名和 COS 默认访问域名)访问资源时将始终弹出下载框。只有存储桶 配置自定义域名并开启静态网站设置后,才可在浏览器中直接打开对象资源。

索引页面

索引页面是当对网站的根或任何子目录发出请求时返回的网页,通常被命名为 index.html 。当用户在浏览器地址栏访问 www.example.com时,未请求特定的页面。在这种情况下,Web 服务器将返回索引页面。

对象存储的静态网站设置提供 Index 索引提供,通过自定义域名访问存储桶包括根目录在内的任何目录,URL 地址以 / 为结尾的,会优先自动匹配该目录下的 index.html,其次匹配 index.htm。如果两个文件都不存在,则返回 404 错误。根级 URL 的尾部斜杠是可选的,以下任意一个 URL 将返回 index.html 或 index.htm。

http://www.example.com/
http://www.example.com

用户可以上传名称为 index.html 或 index.htm 的对象至存储桶(如 example)并将访问权限其配置为公有读私有写。将存储桶(如 example )与用户已有的域名(如 www.example.com )绑定,开启静态网站服务和 Index 索引。当用户在浏览器地址栏中输入www.example.com时,用户将可以直接访问 index.html 文件。

注意:

  • 使用 CDN 加速域名COS 默认域名 访问以 / 结尾的资源,将返回错误。
  • 如果存储桶中创建了文件夹,将需要在每个层级上都添加索引文件。

错误文档

开启静态网站设置后,通过自定义域名访问存储桶时,若触发了 404 或 403 错误,用户可以选择性地自定义错误页面,可以在该页面中向客户提供其他指引。

用户可以为 403 和 404 错误指定返回的自定义页面。设置前请确保用于 403 和 404 错误的自定义页面已上传到配置为网站的存储桶(如 example),并且将存储桶权限设置为公有读私有写。下表列出了当前自定义页面支持的 HTTP 错误码。

HTTP 错误码 说明
403 Forbidden。
可以理解为用户没有权限访问此站,服务器收到请求但拒绝提供服务。通常在存储桶或对象设置了特定的 访问权限 时导致此错误发生。
404 Not Found。
服务器没有找到请求的资源。通常可能发生在以下场景:
- 请求的对象不存在。
- 请求 COS 根目录或文件夹目录时,没有指定索引页。
- URL 中指定的存储桶不存在。

注意:

  • 错误文档配置只支持存储桶根目录下的文件,请使用 .html 或 .htm 等浏览器可识别的文件。若使用了浏览器不可识别的文件,例如 .zip 文件,大部分浏览器将显示错误无法访问或拒绝访问请求。
  • 使用 CDN 加速访问地址或 COS 直接访问地址访问并出现 403 或 404 错误时,设置的错误页面将没有任何效果。

示例

用户创建了名为 example 的存储桶,并将自定义域名 www.example.com 绑定到了该存储桶。放置了如下文件:

index.html
404.html
dir/index.htm
dir/index.html
dir2/
dir3/index.htm

配置静态访问

开启前

使用自定义域名访问页面 http://www.example.com/index.html 将弹出下载框,可以保存 index.html 文件到本地。

开启后

使用自定义域名访问页面 http://www.example.com/index.html 可以直接在浏览器中呈现 index.html 的页面内容。

配置索引页面

开启前

访问 http://www.example.com 返回 404 错误。

访问 http://www.example.com/dir 返回 404 错误,因为根目录下没有 dir 这个文件。

访问 http://www.example.com/dir/ 返回 404 错误。

访问 http://www.example.com/dir2/ 返回 404 错误。

访问 http://www.example.com/dir3/ 返回 404 错误。

开启后

访问 http://www.example.com 返回 index.html 页面。

访问 http://www.example.com/dir 返回 404 错误,因为根目录下没有 dir 这个文件。

访问 http://www.example.com/dir/ 返回 dir/index.html 页面,因为 index.html 优先级比 index.htm 高。

访问 http://www.example.com/dir2/ 返回 404 错误,因为要匹配的 index 页面都不存在。

访问 http://www.example.com/dir3/ 返回 dir3/index.htm 页面。

配置错误文档

开启前

访问 http://www.example.com/abcd.txt 返回 404 状态码,并包含默认的错误信息。

开启后

访问 http://www.example.com/abcd.txt 返回指定的 404.html 的页面,HTTP 状态码仍为 404。