静态化部分网页提高网站体验和seo表现

开发 前端
为什么要把动态网页以静态网页的形式发布呢?一个很重要的原因,就是因为搜索引擎。由于搜索引擎对aspx页面收录和html页面收录率的差别以及页面资源占用问题,我们很多时候需要实现ASPX页面动态转静态。来看本文。

最近,在Google网站管理员工具中观察到自己的一些网站平均加载速度都变得很糟糕,开始想办法优化,自然想到网页静态化

先看下静态网页相对动态网页的一些优点和缺点,也是我在考虑解决方法过程中衡量的问题。

静态网页的优点:

1、访问速度快,耗服务器资源少。

2、网站与数据库分离,数据库宕掉时网站还能正常运行。

3、对搜索引擎友好,利于网站seo。

缺点:

1、快速消耗硬盘空间,尤其是内容多的站点。

2、旧网页不能自动更新内容,除非重新生成网页文件。

3、生成网页文件(特别大量)消耗资源,而且无法保证成功生成每个页面。

当然,对于博客这一类内容少的个人站点,全站生成在操作成本和资源消耗上都不高,在具备静态化功能的前提下完全可以采用这个方案来优化站点。

本站是自己写的代码,没有完美的全站静态化功能,我也不打算花时间再去开发功能,从节约成本和提高效率考虑,我打算用部分页面静态化来达到优化网站访问速度和体验。

一般来说,首页和分类页面是访问频率高、耗资源多、离用户和搜索引擎最近的页面,能静态化是最佳选择。再者这类页面数量少、URL格式也比较固定,容易统一快速处理。这里有两个例子:

1、本站首页静态化

我用的是smarty模板引擎,很方便输出页面内容。在php程序中把原先输出网页的语句去掉:

  1. $tpl->display('index.tpl');改成生成文件的代码即可:  
  2. file_put_contents('./index.html', $tpl->fetch('index.tpl') );还可以顺便去除多余空格和换行:  
  3. //清除空格  
  4. preg_replace('/[\n\r\t]/', ' ', $html)  
  5. //清除换行  
  6. preg_replace('/\s(?=\s)/', '', $html) 


至此,完成首页的静态化,最终效果见本站首页代码。在添加新文章的时候异步执行下这段代码,即可更新首页,不想改动程序的话,手动执行下也很快。

2、通用部分网页静态化方法

知名博客程序Wordpress似乎并未使用全站静态方案,即便有相关第三方插件,用起来也有诸多不便。而这样完整的开源程序不适合手动去改,难度大而且不利于日后升级。

对于这类不方便直接修改程序的网站,我考虑的部分页面静态化方法是整理出首页和分类页的绝对地址,直接使用file_get_content获取代码再生成文件。代码如下:

  1. $urlList = array(  
  2. 'http://www.sky84.cn/index.php/article_list_cat,6.html',  
  3. 'http://www.sky84.cn/index.php/article_list_cat,9.html',  
  4. 'http://www.sky84.cn/index.php/article_list_cat,11.html'  
  5. );  
  6. foreach ($urlList as $v) {  
  7. file_put_contents('article_list_cat,6.html', file_get_contents($v)); 

代码只有基本的思路,具体细节依据网站自身条件处理。

这些方法可以最快、最方便地实现网页静态化带来的优点,但仅适用于个人博客或者小站暂时性优化,若是大站,应对大访问量负载和搜索引擎优化,就要从网站整体设计一套合适的页面静态化和优化方案。

【编辑推荐】

  1. 网页制作学习 关于门户网站设计(上)
  2. 网页制作学习:关于门户网站设计(下)
  3. 网页设计80/20法则过时 现在流行1%法则
  4. 网页设计中的色彩之白色
  5. 浅谈网页的PR值及影响因素
责任编辑:于铁 来源: sky84.cn
相关推荐

2011-05-25 17:33:43

SEO网站用户体验

2011-06-30 17:13:17

SEO用户体验

2011-06-28 17:08:15

网站权重

2009-07-06 08:50:01

静态页SEO看法

2009-05-13 15:43:44

2011-06-13 15:11:01

网站分析SEO

2021-12-27 07:56:35

谷歌Chrome浏览器

2013-02-18 10:12:58

Apache服务器访问动态网站

2011-05-23 18:12:09

SEO

2021-12-27 16:47:22

谷歌Chrome浏览器

2011-06-23 10:12:57

SEO网站建设

2011-06-24 14:46:08

网站优化SEO

2021-06-04 08:56:09

勒索软件攻击数据泄露

2010-08-17 14:15:30

DIV+CSS布局

2023-01-03 09:39:09

Firefox浏览器

2023-07-12 16:03:13

Kubernetes开发容器

2017-11-07 22:25:17

网站评测工具YSlow

2011-05-27 11:10:28

搜索引擎SEO

2011-07-03 19:45:32

SEO

2011-06-07 16:26:47

SEO
点赞
收藏

51CTO技术栈公众号