【seo系统培训】seo技术的高低由什么体现出来
这篇文章主要是想谈谈页面静态化、缓存技术与SEO之间的关系,在此之前seocnm快速排名发包技术小编有必要先解释一下这三个词的概念。
页面静态化:我们大多数情况下是直接访问php文件,php脚本在服务器端执行并返回信息,对于一些大型网站,访问量很大,频繁的动态操作和数据库操作会加重服务器的负担。这种情况下,我们通常会使用缓存技术或页面静态化来解决。页面静态化又分为真静态和伪静态。真静态是指将php文件通过程序控制生成html页面,从而就无需访问数据库;伪静态只是把网址静态化,(如果没有做缓存)访问时依然需要每次操作数据库。
缓存(cache)技术:通常,我们获取动态信息有三种方式:1.从数据库获取;2.从文件获取;3.将信息保存在内存,直接从内存获取,即我们通常所说的缓存(php中的缓存技术通常使用ob已及memcached)。其效率在同等数据量信息下是1<2<3。虽然使用缓存技术将耗费大量内存,但是,庆幸的是内存的市场价现慢慢变的可接受,因此以资源换取效率变的很理性与简单。
SEO:中文译为搜索引擎优化,是较为流行的网络营销方式,主要工作是通过了解各类搜索引擎如何抓取互联网页面、如何进行索引以及如何确定其对某一特定关键词的搜索结果排名等技术,来对网页进行相关的优化,使其提高搜索引擎排名,从而提高网站访问量,最终提升网站的销售能力或宣传能力的技术。
从大的方向来说,大型网站的提速一般是通过页面静态化、缓存技术(主要指memcached)、mysql优化三个方面来实现。同时,提速经常又需要考虑现实状况,比如SEO问题、静态页面是否需要及时更新、大量产生静态页面后导致的文件堆积问题等等,于是这些矛盾就引出了我们今天的话题。
页面静态化(这里特指真静态)能够明显地提高网站的访问效率,并且无论是真静态还是伪静态对于SEO来说都是非常有利的。因为搜索引擎对静态页面“情有独钟”,蜘蛛爬虫很乐意去爬取静态网页的内容,而对于动态网页www.seofuwu.com,诸如php页面,搜索引擎总认为去检索页面信息很麻烦,而且为了尽量抓取有意义的页面内容,总是要对动态页面抓取多次,如此一来,对页面的收录效率就会相对降低,即对SEO有了负面的影响。还有,从安全的角度来说,静态页面更不容易被SQL注入攻击。因此,为了提高访问效率,同时利于SEO,增强安全性,我们通常需要将动态页面静态化。
如果采用真静态,访问页面提供的是静态链接,可以减少服务器对数据响应的负荷,二次加载时不用调动数据库。响应处理过程是如果当前链接指定的静态页面存在,则直接访问静态页面,否则视为第一次访问,创建这个静态页面,并保存。在创建的过程中,又可以引入模板、ob缓存机制,甚至是memcached技术。可能大家会想,那如果是大型网站,由于信息量和访问量都是海量数据级别的,那么岂不是会随着时间的推移产生大量的静态页面,即冗余文件大量堆积,空间占用比较大,而且,毋庸置疑的是可能某些文件用于不会再被使用。这种情况下,我们通常可以根据需要,设定相应的处理规则,根据规则开发对应程序,比如定时执行任务计划,删除冗余文件,或者当原有数据库内信息被修改时,也同时修改对应静态文件等等,这样就可以在很大程度上缓解压力。必须提出的是,由于访问的都是静态页,对SEO来说,真静态确实是一种较佳的选择。
无论怎么处理,真静态都会必不可免地产生堆积内容,这时候,往往我们会想到伪静态方法。
伪静态提供的也是静态链接,但是需要注意的是其实际访问的依然是动态页面。那么,伪静态有什么作用呢?正如之前的介绍,由于链接是静态的,这对于SEO来说还是很有利的,而且,一定程度上提高的安全性。至于访问效率的提高,我们依然可以使用ob缓存机制来提升访问效率。与真静态相比,伪静态避免产生海量的静态页面。实现伪静态的方法有很多,在IIS下有rewrite规则、Apache下有rewrite规则,甚至可以通过正则表达式使用PHP脚本直接处理。然而通常我们选用rewrite规则来实现伪静态。(实现过程略)
网站实时性要求比较高,不要使用页面静态化(真静态、伪静态均不适宜)
如果网站访问量较小,没有必要使用静态化技术
如果数据项目不多,但是访问频率极大,建议使用真静态,如新浪新闻频道
如果数据醒目海量使用真静态会生成海量的html静态页面,建议使用伪静态
小结:如果一个网页会被频繁地访问(比如百万级别),通过该网页每次都会去操作数据库,可以考虑使用真静态;如果一个网页为了实现对搜索引擎的优化,提高网站的安全性,考虑使用伪静态(+缓存机制)。