1.什么是页面静态化
页面静态化,能够分为伪静态与静态化两种
伪静态是指将动态连接经过必定的手段变成静态文件的连接(
restful方式等),如userdetail.htm?userid=1234 变成 userdetail/1234.html
静态化 则是在userdetail目录下面生成1234.html文件
2.为何须要静态化
咱们为何须要将页面静态化,主要考虑到一下方面
- 利用seo (search engine optimization ) 搜索引擎优化
- 提升程序性能,因为不访问容器和对数据库的操做,因此效率比较高
- 防止sql注入攻击
3.怎样在项目中使用页面静态化
1.怎样生成静态文件
咱们能够使用模板引擎的方式,根据模板和数据,生成对应的静态文件,常见的java的模板引擎有(
freemarker,
velocity,beetl
)等,目前咱们的静态化,采用freemarker
2.模板的存储
静态化模板的存储,一般有两种: 1,保存数据库;2,当成资源文件放在工程目录下。 若是模板规模比较大,且模板的更新比较平凡,建议使用数据库进行保存。
3.如何访问静态文件
常规工程项目架构如图
常规工程,能够将生成的静态文件放置在某一个文件夹下或者某一个静态文件服务器中,由nginx等代理服务器,反向代理访问相应的资源文件
因为阿里云OSS 提供静态网站访问功能,故咱们能够使用阿里云的静态网站托管功能作静态资源访问,具体使用方法能够见阿里云
1.新建单独
Bucket
2.配置index索引页,与错误支持页
3.配置域名及CDN 加速
注意:
若是开通CDN加速功能,在更改相应的静态文件时,须要从新刷新对应的CDN ,目前阿里云提供了CDN操做的接口,具体API参照:
因为未实际使用腾讯云进行测试,故暂时的方案定为 腾讯云存储COS+CDN
具体步骤:
1 生成静态文件
2 上传文件至COS
3 刷新CDN
附:
上传文件参考:
配置CDN
CDN操做相关API
4.相关代码: