|
主题:[分享]巧用自定义页面管理(碎片管理)实现大型网站应用 [收藏主题] | 转到: |
将网站全部生成静态.html后有诸多有好处,不仅利于搜索引擎搜索,还有利于减少服务器压力。但给我们带来诸多好处的同时,也同时因生成大量的静态页面导致网站信息更新不及时而烦恼。各个页面都及时更新到最新信息,就必须重新生成所有的页面。对于小数据量的网站是无所谓,但对于几万,几十万个静态页的站点,显然是头痛的一件事。
您是否曾经因为很多生成静态的页面无法及时更新最新内容,是否因修改网页底部版权信息导致所有页面不能及时更新页烦恼呢?今天我和大家一起来解决这个问题。 先给大家介绍一个新概念(碎片),我们可以把一个完整的页面理解成由许多块组成,而每一个“块”我们就可以当做一个”碎片“,这样我们如果更新信息时能按块(碎片)局部更新,那就能很好的解决我们上面说的问题,我们只需对碎片进行更新维护即可,不需要再大量重新生成已生成的静态页面。 会ASP编程的人一定用过asp的include功能,但如果生成静态页面我们能将局部更新的内容通过Include,那也可以解决这个问题。其实这是可以的,我们只需要将生成的扩展名改用.shtml即可, shtml和asp 有一些相似,以shtml命名的文件里,使用了ssi的一些指令,就像asp中的指令,你可以在SHTML文件中写入SSI指令,当客户端访问这些shtml文件时,服务器端会把这些SHTML文件进行读取和解释,把SHTML文件中包含的SSI指令解释出来。(关于shtml文档的说明可见http://baike.baidu.com/view/31870.htm) 举例如下 <html> <head> <title>页面标题</title> <head> <body> <!--#include file=”/html/top.html”--> 网站主体内容 <!--#include file=”/html/bottom.html”--> </body> <html> 假如我们生成的静态内容如上,此代码包含了两个碎片 top.html和bottom.html页面。这时我们如果更改网站的顶部导航或是底部的版权信息等,只需要更新top.html或是bottom.html页面即可。而不需要再一个个页面去重新生成了。 实现思路如下: 第一步:进入科汛模型管理启用生成静态 第二步:进入栏目管理 这里设置只对新添加的文档有效,以前添加的文章如果要更改可以用数据库字段替换功能,对各个模型表的fname字段进行替换,通过这里设置后,以后添加的文章将以.shtml扩展名生成 第三步:碎片管理(这里我们采用科汛后台的自定义静态页面功能,对碎片进行更新维护) 到标签选项->自定义静态页面管理,新建页面如下图 说明:每个页面(这里理解成碎片)对应一个模板,可以先做一个静态标签放到template目录下,这里假设碎片模板为top.html,对应的内容为一个静态标签({LB_头部通用}),生成的文件名即我们要在模板里include的完整路径,这里假设填top.html。 最后就一步就是调用了,我们的模板里就可以能过<!--#include file=”碎片生成的文件名"--> 进行调用。 说明:需要服务器开启.shtml扩展名支持才行,window 2003的用户可以打开IIS-》web服务扩展->在服务端的包含文件设置成允许即可,如下图
|
|||
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
hzzjlaozhao 发表于:2010/5/19 17:11:00 | 只看该作者 查看该作者主题
藤椅
|
|
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
支持(0) | 反对(0) 顶端 底部 |
<上一主题 | 下一主题 > |