利用HttpHandler生成静态页面

  利用HttpHandler生成静态页面


看了静态页转换平台(StaticPol)-静态页生成终极解决方案后,
http://nurong.cnblogs.com/archive/2005/11/16/255439.html

就做了我现在放上来的这个东西,也是转成静态页面的,紧限于dotNet使用(我是用 HttpHandler处理的),并且也很简单,主要是实现我想要的功能了,不足的地方肯定是很多的(后面我会提到两点),希望不是耽误你的时间。 
下面说说具体的实现: 

1.Web.config里的配置
<!--配置策略config文件地址--> 
<appSettings> 
    <add key="ConfigFilePath" value="Config/StaticTactic.Config" /> 
</appSettings> 
......(省略) 
<!--配置httpHandler--> 
<httpHandlers> 
    <add path="*.aspx" verb="*" type="Hsq.Library.ToStaticPage.ProcessorHandler, ToStaticPage"/> 
</httpHandlers>


2.策略配置文件
<!-- 
Rules.Root : 生成的静态页面在Web站点中的根目录文件夹 
Rules.TimeSpan  : 默认的过期时间差(以 分钟 为单位) 
LookFor : 需要生成静态页面的页面 
TimeSpan : 静态页面的过期时间差(以 分钟 为单位) 
-->
<StaticTacConfig>
    <Rules Root="HTML" TimeSpan="10">
        <TacRule LookFor="Default.aspx">
            <TimeSpan>1</TimeSpan>
        </TacRule>
        <TacRule LookFor="Product/Sort.aspx">
            <TimeSpan>10</TimeSpan>
        </TacRule>
    </Rules>
</StaticTacConfig>


3.HttpHandler的实现
 这个比较简单的,大家看看源代码就知道了。 主要是判断 请求的页面是否需要 生成静态页面, 若需要,则判断 静态页面是否存在 或者存在但是否已经过期 不存在,或存在但过期的页面需要重新生成。 
源代码  http://www.cnblogs.com/files/hsqzzzl/ToStaticPage(Beta2).rar <script src="/Script/Embed.js" type="text/javascript"></script> <script src="http://p.alimama.com/inf.js" type="text/javascript"></script> id="alimamatmpf0.17110906782736107" border="0" name="alimamatmpf0.17110906782736107" marginwidth="0" marginheight="0" src="http://p.mm.cn.yahoo.com/alimamal.php?u=http%3A%2F%2Fwww.chenjiliang.com%2FArticle%2FView.aspx%3FArticleID%3D245%26TypeID%3D5&i=mm_10047322_140881_330115&re=1024x768&sz=12&r=http%3A%2F%2Fwww.chenjiliang.com%2FArticle%2FView.aspx%3FArticleID%3D2259%26TypeID%3D5&sx=825&sy=1146&w=468&h=60" frameborder="0" width="0" scrolling="no" height="0">
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值