页面静态化
概述:核心 把动态的页面 转成 静态页面 从而减少对数据库操作的次数。
分为 真静态、伪静态、局部静态
1.html页面静态化(真静态的)优点和缺点
减少对数据库的查询次数,从而提高速度
利用SEO news-id2.html
提高安全性,减少sql注入
缺点:
因为生成了html页面,所以会占用更多的空间
如果我们html页面很多,同样导致去获取html响应速度问题,考虑 分文件夹来存放html页面. 20120904/xxx 20120905/
2.伪静态
伪静态的优缺点分析:
优点: 1. SEO 2. 防止注入 3. 占用空间小
缺点: 1. 因为没有真正的静态化,因此每次请求是需要查询数据库
一、html静态的实现方法
1.使用php的ob缓存机制来实现页面静态化
2.使用模版技术来实现页面静态化
二、伪静态的实现方法
1.使用字符串方法来截取(我认为 a.麻烦 b.复杂)
2.使用apache的rewrite机制
3.在文件夹下,直接通过写.htaccess文件来指定重新规范
三、局部静态的实现方法
代码:
1.ob缓存
//这里我们可以再找个页面把ob缓存打开
//开启ob缓存
ob_start();
echo "hello,wrold!";
header("content-type: text/html;charset=utf-8");
echo "你好!";
//把ob内容缓存清空,但是ob缓存还在
//ob_clean();
//把ob内容缓存清空,同时关闭ob缓存
//ob_end_clean();
//把ob缓存的内容,刷新到程序缓存,同时关闭ob缓存
//ob_end_flush();
//把ob缓存的内容,刷新到程序缓存,不关闭ob缓存
ob_flush();
echo "笑傲江湖";
//获取ob缓存内容
$con=ob_get_contents();
//需要把日志,写入文件. echo print_r var_dump ,写文件 ,下断点.
file_put_contents("d://hsp.log",$con);
现在我们再说最后一个函数 flush()
该函数是把 程序缓存的内容,强制刷新到 浏览器
小方法:判断网页是静态的还是伪静态
火狐浏览器下: