背景
随着时代进入DT时代,更低廉的成本和更加易于扩展的特点都是应该成为我们关注的重点。如果您有一个网站,网站的访问量很大、很稳定,恭喜您,请继续保持使用我们的ECS服务器。如果您的网站才刚成立或者网站的平时流量较小,偶尔会有大流量的情况。那么问题来了,继续租一台ECS服务器,流量不敢设置太小了,最低配置加上4Mb的带宽,是不是觉得成本有点高了?
但是换个思路,换成用OSS作服务器话,就可以很好的应对大流量的那几天的访问,而且平时几乎没用费用产生,并且没有带宽限制,真正的按流量掏钱,成本急剧降低。
方案
使用OSS搭建一个静态网站,主要分为以下步骤:
1.申请一个域名
2.开通OSS并创建Bucket
3.开通OSS的静态网站托管功能
4.使用自定义域名访问OSS
简单说就是用户可以基于OSS搭建一个简单的静态网页。用户开启此功能后,OSS提供了一个默认的首页和默认的404页面功能, 具体参见开发人员指南中静态网站托管的介绍。
具体操作步骤
1.申请域名
本文的域名是从万网购买的,申请了一个leo23.xyz的域名。 如果需要更多域名方面的帮助,请参见http://wanwang.aliyun.com/。
2.开通OSS并创建Bucket
登录OSS控制台,创建一个Bucket为imgleo23,创建在上海,Endpoint为oss-cn-shanghai.aliyuncs.com。 如图所示:
将Bucket的权限设置为公开读。
上传index.html和error.html文件内容,如图所示:
其中index.html的内容为:
<html>
<head>
<title>Hello OSS!</title>
<meta charset="utf-8">
</head>
<body>
<p>欢迎使用OSS静态网站的功能</p>
<p>这是首页</p>
</body></html>
error.html的内容为:
<html>
<head>
<title>Hello OSS!</title>
<meta charset="utf-8">
</head>
<body>
<p>这是OSS静态网站托管的错误首页</p>
</body></html>
aliyun-logo.png是一张图片。
3.开通OSS的静态网站托管功能
如图所示,登录控制台后,将默认首页设置为上文中的index.html,将默认404页设置为上文中的error.html。
检验静态网站托管功能,输入如图所示的URL地址:
- 显示默认的首页
可以看到输入类似URL的时候,会显示开通时指定的index.html中的内容。
- 显示默认的404页
可以看到输入的URL没有对应的文件时,会显示开通时指定的error.html中的内容。
- 显示正常的文件
可以看到输入的URL有对应的文件时,会读取成功。
这里可能会出现一个问题,就是用户发现实际使用中,浏览器的行为是下载,而不是直接在浏览器上展示。这是OSS的行为。与用户无关,如果需要在浏览器中直接显示,需要用户用自定义域名的方式来使用静态网站功能。
4.使用自定义域名访问 OSS
开发人员指南中的自定义域名访问 OSS有介绍如何实现自定义域名访问 OSS,这里不多说。直接来看最后的效果。
-
显示默认的首页
-
显示默认的404页
-
显示正常的文件
这样一个简单的静态网站就实现了。
常见问题及解决方案
1.为什么我设置的静态网站托管网页是直接下载的?静态html网页通过url访问为下载不是浏览?怎么解决?答:由于国内互联网访问的备案制度,OSS默认的行为会变成下载。这个时候需要用户改用自定义域名访问 OSS。
2.OSS静态网站托管对客户来说有什么好处?答:在用户需求比较简单的时候,且访问量比较小的时候,可以省掉一台ECS。如果访问量大一点,可以考虑结合CDN来使用。
3.价格怎么样?如何和CDN结合?答:1、价格可以参考官方网站OSS的价格,CDN的价格也可以参考官方网站CND的价格,官网地址www.aliyun.com;2 结合的例子可以参考CDN加速OSS实践。
4.默认的首页和默认的404页面都需要设置吗?答:默认首页需要设置,但默认404页面可以不用设置。
5.为什么输入的URL在浏览器上返回403?答:有可能Bucket的权限不是公开读。也有可能是因为欠费被停止使用。