6.1 实现过程
首先,制作Html新闻newsModel.html,作为新闻静态页面显示的基础,根据客户端请求新闻的id,从提取数据库中news表中newstitle、writer、newstime、content等相关字段,然后通过CreateNewsStaticPage.ashx将具体内容写回newsModel.html中,形成新的以id命名的新闻静态页面,并保存在指定文件夹AshxNewsStaticPage下。
其次,创建Http处理程序CreateNewsHttpHandler.ashx实现动态新闻页面静态化:
public class CreateNewsHttpHandler: IHttpHandler {
public void ProcessRequest (HttpContext context) { //代码略
}
}
6.2 结果分析
如图3所示,在未使用静态页面生成技术之前,加载出来的新闻页面的地址栏中显示的是“…/?id=68”,这是动态页面常见的表示形式,客户端通过id把所要请求的新闻页面发送到服务器端,服务器端通过id从数据库中提取到相关信息,形成Html标记语言传回到浏览器。像这种企业网站,其中大部分页面属于信息呈现页,读取量较大,信息通常由后台发布,更新较少,但是页面上有大量的交互性内容,比如留言、联系我们等板块,如果大家都在同一时间访问本站,那么将会给服务器造成很大的压力,用户请求页面的加载速度将大大降低,每个人的忍耐是有一定限度的,据有关数据显示,如果一个请求网页在3S内未呈现出来,那么90%的人会立即中断该请求,这也间接的造成了企业潜在客户的流失,有损企业的经济效益,交互性的内容和交互的频繁程度促使各大企业网站采用页面静态化技术。 基于HttpHandler的页面静态化研究(5):http://www.751com.cn/jisuanji/lunwen_2490.html