• 网页静态化技术


    静态页面:纯html页面

    动态页面:内容存在数据库中,根据要求显示,url中以? &显示不同的参数

    伪静态:仅仅是对静态页面的重写,不能让动态页面静态化。搜索引擎不会认为伪静态就是HTML文档。其次,伪静态可取,但应把重心放在去除冗余参数、规范URL、尽可能的避免

    重复页上。 举例说明: 这是一个动态网址 news.php?lang=cn&class=1&id=2,从seo的角度来看, 最好重写为 news-cn-class1-id2.html。这样的也更加有效的防止sql注入攻击 。

    但是也不要精简重写为 news-2.html,这样简写同样不利于搜索引擎优化.

     

    静态化的必要性:

    1.访问html比php jsp速度更快

    2.更有利于SEO

    3.不易被sql攻击

     

    网站的优化,要注意的以下几点:

     

    页面真静态思路:

    信息对实时性要去不高,并且比较稳定,当第一个用户访问某条新闻后,使用缓存机制(缓存的内容是http的contents中的内容),

    把内容缓存到html中,下次访问时直接访问html即可。

    问题:

    如果我们的新闻更新了,这样我们的静态页面不变->解决

    解决方法1:我们可以判断静态页面是否过期(30s),如果过期,则重新创建

    方法局限:①页面点击查看的时候,仍然是个php页面->网址

         ②实时性不好,30s延时

    解决思想:当我们添加新闻或者更新新闻的时候,就同步的更新html静态页面。

    设计模板文件(网页设计师/美工),通过模板创建静态页面。

     

    页面静态化(真静态)的优点和缺点 

    html静态页(真静态)的好处

    一是减少服务器对数据响应的负荷,

    二是加载不用调动数据库,响应速度快。

    三是便于优化引擎。

    缺点:一是空间占用比较大。二是生成的文件多了,服务器对html文件的响应负担也较重,海量的静态文件查找起来也较慢。

    如果一个系统使用真静态进行页面静态化,需要生成海量的静态 页面,我们可以考虑使用伪静态来处理.

     

    伪静态:

    比如这个网页 http://localhost/content.php/1,122,8912.html 其实处理的脚本是content.php 参数为1,122,8912

    相当于content.php?a=1&b=122&c=8912 只不过这样的URL太难记。搜索引擎也不喜欢。、

    真静态只是完全生成了HTML。 客户端访问的时候直接输出。不用脚本解释。在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果。

    也就是说服务器端实实在在的存在这个HTML页面。 当然在你网站的流量没有那么大的时候。URL重写是最好的方法(如果访问量很大,还可以考虑负载均衡)

    URL重写的方法有很多种,APACHE(rewrite),IISREWRITE。PHP脚本直接处理。我们先讲解如何使用PHP脚本直接处理。

    1.php程序的正则表达式来实现:

    程序为例:

    http://localhost/content.php/1,122,8912.html

    <?php //利用server变量 取得PATH_INFO信息 该例中为 /1,122,8912.html 也就是执行脚本名后面的部分

    if(@$path_info =$_SERVER["PATH_INFO"]){

    //正则匹配一下参数

    if(preg_match("//(d+),(d+),(d+).html/si",$path_info,$arr_path)){

    $gid =intval($arr_path[1]); //取得值 1

    $sid =intval($arr_path[2]);//取得值122

    $softid =intval($arr_path[3]); //取得值8912

    }else die("Path:Error!"); }else die('Path:Nothing!'); ?>

    2.

    下面讲一下另外一种形式的PHP伪静态的程序实现方法程序为例: http://www.hsp.com/news-id23.html 通过apache的 rewrite机制来实现.

     

    真静态 VS 伪静态

    ①真静态访问效率高,利于seo.可以减少对数据库的操作。但是会占用大量 的磁盘.

    ②伪静态一、可以方便的实现对搜索引擎的优化,

        二、占空间比较小。

        三、通过生成不同view-id2.hmtl 可以实现内容的变化.

        四有效的防止了注入攻击

    小结: 如果一个网页会被频繁的访问(比如百万级别),通过该网页每次都会去操作数据库,可以考虑使用真静态(建议有针对性的使用),

        如果一个网页为了实现对搜索引擎的优化,提供网站的安全性,使用伪静态.

    真静态和伪静态的选择

    什么情况下不适合使用静态化技术. 网站实时性要求高,不要使用静态化(真静态,伪静态均不适宜). 如果网站访问量较小,没有必要使用静态化技术

    如果数据项目不多,但是访问频率极大,建议使用真静态,比如新浪新闻频道

    如果数据项目海量,使用真静态会生成海量的html静态页面,建议 使用伪静态

    在一个大型网站中,静态化技术是综合使用的,这个需要大家经验 的积累,多做项目

    注: 个人推荐使用伪静态配合缓存技术(防止缓存文件量过大做一些定时清理过时文件操作)来为提供大型网站提速.

    java web简单实现真静态案例:「Java Web」主页静态化的实现

    java web简单实现伪静态案例:【Java Web】使用URLRewrite实现网站伪静态

  • 相关阅读:
    [转]How can I create a design netlist without including my source design files?
    [转]基于FPGA的以太网开发
    [转]GMII/RGMII/SGMII/TBI/RTBI接口信号及时序介绍
    [原]Altium画PCB时鼠标十字不能对准焊盘中心
    [转]Altera特殊管脚的使用(适用全系列Altera FPGA,MSEL区别除外)-来自altera论坛
    [转]STM32正交编码器驱动电机
    [转]使用D触发器制作正交编码器的鉴相电路
    [转]解决STM32开启定时器时立即进入一次中断程序问题
    [转]ISE iMPACT bit生成mcs
    [转]NiosII处理器软件代码优化方法
  • 原文地址:https://www.cnblogs.com/xiangkejin/p/7112233.html
Copyright © 2020-2023  润新知