网站优化伪静态站还是静态站好,看完这样你就知道了

2020-05-02 1 编辑:Seo葵花宝典 来源:

一、什么是伪静态

  伪静态即是网站本身是动态网页如.php、.asp、.aspx等格式动态网页有时这类动态网页还跟"?"加参数来读取数据库内不同资料,伪静态就是做url重写操作(即rewrite)。很典型的案例即是discuz论坛系统,后台就有一个设置伪静态功能,开启伪静态后,动态网页即被转换重写成静态网页类型页面,通过浏览器访问地址和真的静态页面没区别。但是记住:做伪静态的前提就是服务器要支持伪静态重写URL Rewrite功能。

  考虑搜索引擎优化(即SEO),将动态网页通过服务器处理成静态页面,如www.ilede.com/case/fd.php?=12这样的动态网页处理成www.ilede.com/case-fd-12.html这样格式静态页面,常见的论坛帖子页面,都是经过伪静态处理成静态页面格式html页面。由于网站所用的程序语言不易被发现,经过重写来伪静态来将动态网页的程序后缀变为html的静态页面格式。伪静态是一种可以把文件后缀改成任何可能的一种方法,比如如果想把php文件伪静态成html文件,这种配置相当简单的,后面会提到相应配置。

二、真静态、伪静态优点和缺点

  真静态(html)优点;1)减少服务器对数据响应的负荷;2)加载不用调动数据库,响应速度快。

  真静态缺点:1)维护不方便,每次都要手动生成;2)空间占用比较大,容易造成磁盘压力;3)生成的文件多,服务器对html文件的响应负担也较重。

  伪静态(url重写)优点:1)可以方便的实现对化化引擎的优化,并且比生成静态更加方便;2)占空间比较小;3)首页每天都自动变化,不用维护。网站首页一般都有热点排行之类的,你可以设为,24小时排行,一周排行,再加上最新文章,最新点评等。这样首页天天是有变化的;4)便于广告的轮显。比如:你可以把 art1234.aspx,这个虚成n个页,如art_1234.aspx,news_1234.aspx,top_1234.aspx,在不同的页面放 不同的广告。总之是动态的,就可以随意动。

  伪静态缺点:1)如果流量稍大一些使用伪静态就出现CPU使用超负荷,因为伪静态是用正则判断而不是真实地址,分辨到底显示哪个页面的责任也由直接指定转由CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病;2)伪静态效率不如生成html的,因为它不是真正意义上的静态页,所以每次请求都是要去读取数据库的信息(这个可以用缓存技术来补偿一下)。

三、真静态、伪静态原理与实现方案

1. 伪静态

  伪静态是相对于真静态而言的,就是把一些asp,php等结尾url通过apche或nginx的重写规则,变成以html一类的静态页面形式。伪静态不是真正的静态,它和动态地址一样要读取数据库。伪静态最主要的作用就是利于seo,百度spider(百度蜘蛛)喜欢抓取静态页面,可容易使百度spider陷入死循环;并发量高的时候会加大服务器的压力,所以用的时候要注意。

  伪静态就是利用apche,nginx重写规则,对url地址重写实现的!伪静态实现原理:

  1) Apache伪静态前提是要打开apache的重写模块 (即打开"LoadModule rewrite_module modules/mod_rewrite.so"这一行);

  2) Nginx默认就支持伪静态;

  伪静态有两种配置方式

  1) 在配置虚拟主机的时候设置;

  2) 在web根目录下创建一个.htaccess文件,在这个文件里面配置;

2. 真静态

  在网站设计中,纯粹HTML(标准通用标记语言下的一个应用)格式的网页通常被称为"静态网页",静态网页是标准的HTML文件,它的文件扩展名是.htm、.html,可以包含文本、图像、声音、FLASH动画、客户端脚本和ActiveX控件及JAVA小程序等。静态网页是网站建设的基础,早期的网站一般都是由静态网页制作的。静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。容易误解的是静态页面都是htm这类页面,实际上静态也不是完全静态,它也可以出现各种动态的效果,如GIF格式的动画、FLASH、滚动字幕等。

  大型web项目优化中经常会考虑到使用真静态,这样在访问量大的时候,可以减少cpu的压力,但是会生成大量的文件占用网站的磁盘空间,可以写个php的脚本或用linux的计划任务进行删除。在用真静态的时候有的时候需要用到局部的动态化。

  真静态实现方法

  1)利用PHP模板生成静态页面;

  2)使用PHP文件读写功能生成静态页面;

  3)使用PHP输出控制函数缓存机制生成静态页面;

  4)使用nosql从内存中读取内容(其实这个已经不算静态化了而是缓存);

  memcached是键值一一对应,key默认最大不能超过128个字节,value默认大小是1M,因此1M大小满足大多数网页大小的存储。

  真静态和伪静态的区别

  1)是不是一个真正静态页面;

  2)有没有和数据库或后台程序进行交互;

  3)它们的应用场景和解决的问题不同;

  4)用javascript:alert(document.lastModified)来判断是真静态还是伪静态;

  真静态在apache和nginx上的区别与否

  1)真静态在nginx上的运行速度比apache运行速度快;

  2)nginx处理静态文件对于apache来说消耗的内存少;

  伪静态在apache和nginx上的区别与否

  1)本质上没有区别,两者都是根据正则匹配对应的url的重写。但是apache和nginx上的伪静态规则还是有点不同,在配置的时候要注意;

  2)apache处理伪静态比nginx更有优势;

本站文章均为乐得网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,但谢绝直接搬砖和抄袭!感谢...
我们猜你喜欢