页面静态化

分为真静态,和伪静态。另外,常常会将js、css、图片等单独放到几台资源服务器,由nginx分发请求到动态服务器和资源服务器。以及使用CDN分发网络。另外,同一个页面,也可以分为静止不变的,前端可以缓存,比如页面头部、底部等。

 

真静态:生成html,另外可以将页面内容放入nosql中。

伪静态:UrlRewrite

其中UrlRewrite,其实是一种地址欺骗,有多种实现,主要是页面通过访问http://xxxx/page/1.html时,后端根据url转发到pageContoller的一个默认方法处理,参数id为1.

下载相应jar包,然后在配置中配filter,把静态请求根据正则表达式将请求重置为动态请求:

1、提高安全性,屏蔽内部的url结构

2、美化URL

3、更有利于搜索引擎的收入,通过对URL的一些优化,可以使搜索引擎更好的识别与收录网站的信息。

 

 

 

静态化的好处,网上摘录:

一、加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明显提高;
二、有利于搜索引擎优化SEO,Baidu、Google都会优先收录静态页面,不仅被收录的快还收录的全;
三、减轻服务器负担,浏览网页无需调用系统数据库;
四、网站更安全,HTML页面不会受php相关漏洞的影响; 观看一下大一点的网站基本全是静态页面,而且可以减少攻击,防sql注入。

 

需要解决的问题:

一、信息更新时,如何保证信息同步。

二、静态文件资源不断增加,容量逐渐增大。

三、数据与模板对应。数据库的数据要与具体模板一致对应上,算法不能出错。

 

 个人理解:

         jsp的原理还记得不,当客户端浏览器向服务器请求一个 JSP 页面时,服务器收到该请求后,首先检查所请求的这个JSP 文件内容 ( 代码 ) 是否已经被更新,或者是否是 JSP 文件创建后的第一次被访问:

如果是,那么,这个 JSP 文件就会在服务器端的 JSP 引擎作用下转化为一个 Servlet 类的 Java 源代码文件。紧接着,这个 Servlet 类会在 Java 编译器的作用下被编译成一个字节码文件,并装载到 jvm 解释执行。剩下的就等同于 Servlet 的处理过程了。发多

         所以呢,如果想做伪静态,只需要配置一个URLRewriterFilter过滤器,拦截.html请求,匹配url是否符合静态页面,是则根据前缀作为参数转发到其他处理器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值