zoukankan      html  css  js  c++  java
  • 页面静态化

    概述:核心 把动态的页面 转成 静态页面 从而减少对数据库操作的次数。

    分为 真静态、伪静态、局部静态

    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()

      该函数是把 程序缓存的内容,强制刷新到 浏览器

    小方法:判断网页是静态的还是伪静态

    火狐浏览器下:

    先用火狐打开一个网页如:www.baidu.com 等网页完全打开后进入FireFox的控制台。"工具"-“错误控制台”快捷键:shift+ctrl+J  然后在控制台里面输入:alert(document.lastModified); 查看最后修改时间并记录。接下来关闭控制台,重新刷新网页,再用相同的方法在控制台里输入查询代码,再查看文件的最后修改时间,连续几次如果发现时间不同则可以判断它是伪静态的了

  • 相关阅读:
    OpenLDAP备份和恢复
    OpenLDAP搭建部署
    Python正则表达式
    ansible学习
    Jenkins学习
    docker学习2
    让阿里告诉你, iOS开发者为什么要学 Flutter !
    用UIKit和UIView在视图上执行iOS动画
    iOS开发如何面对疫情过后的面试高峰期 !
    如何写好一个UITableView
  • 原文地址:https://www.cnblogs.com/suihui/p/3054153.html
Copyright © 2011-2022 走看看