设为首页 加入收藏

TOP

网页静态化技术
2017-10-10 12:47:02 】 浏览:9960
Tags:网页 静态 技术

静态页面:纯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实现网站伪静态

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Spring Batch框架流程的简单介绍 下一篇设计模式(3)抽象工厂模式(Abst..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目