一般情况下,我们开发好了 html, css, js 以及一些媒体资源(如图片、视频)都需要部署到一个静态服务器。比如 :
Github pages 就是静态网站服务;
Nginx 路由静态页面也是最基础的静态网站;
Vuepress 项目的产物的也是静态网站;
所以,一般情况下我们说到静态网站,就是指网站没有动态内容,就是纯 HTML,没有动态请求。云开发也提供了静态网站托管(服务),可以:
部署任何资源和文件;
可以设置网站的首页,例如 index.html;
可以设置网站的 404 页面,例如 404.html;
也可以自定义域名,建议这么做;因为如果使用的是默认域名,网站的访问会被限速;
可以和云函数结合,云函数负责动态调用数据库数据,静态网站托管负责部署 html、js、css文件;这样一个动态网站就诞生了,就全部是 Serverless化了。
静态网站托管需要选择
将静态页面部署托管
假定前面没有选择按量付费套餐,则可以选择将环境切换为“按量付费” 或者重新新建环境,如下图所示:
比如当前的文档站点就是 Vuepress 上传上去的,如下图:
静态网站托管会提供一个默认域名,可以在基础配置页面对首页和404页面进行设置。
推荐范式:云端一体化模式
一个网站离不开动态数据,也离不开静态页面。因此推荐动静结合的方式。如下图,
第 1 种方式,可以在云函数中访问数据库和云存储,也是前面篇章提到的方式;然后在静态托管中通过 Ajax 请求云函数的 HTTP 服务。
第 2 种方式,可以使用云开发端上 SDK,直接请求数据库和云存储等服务,可以不写云函数,整个站点全部都是前端 JavaScript 代码。
第 3 种方式,就是第一种和第二种方式的结合体,适当时机用云函数 HTTP 触发,适当时机用端侧 SDK,然后配合静态网站托管,也就是云端一体化开发模式。