打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
如何静态化网站首页

  如何静态化网站首页

昨天白天看了一下"用div+css进行网页布局"的文章,晚上回家利用div+css做了一个网站的首页。今天就想如何能把网站的首页静态化,以加快访问速度。上网查了一下资料,在.net下有两种比较好的方法。

      方法一:在页面Render的时候,自动生成网页的静态化文件。具体代码如下:

      protected override void Render(HtmlTextWriter writer)//重写Render方法,生成静态文件
     {        
         StringWriter html = new StringWriter();
         HtmlTextWriter tw = new HtmlTextWriter(html);
         base.Render(tw);
         StreamWriter sw = new StreamWriter(Server.MapPath("default.html"), false, System.Text.Encoding.Default);
         sw.Write(html.ToString());
         sw.Close();
         tw.Close();
         Response.Write(html.ToString());
     }

     这种方法的缺陷是必须访问对应的动态页面的时候才能生成静态代码,但是作为网站的首页显然这种实现方法显然不太好。因为要求用户访问的是生成的静态页面,总不能每次首页的内容变了之后手动访问一下这个动态页吧。

      第二种方法是利用WebClient类实现,主要代码如下:

      /// <summary>
         /// 得到指定url的源代码,放到指定的路径下
         /// </summary>
         /// <param name="strURL">url地址</param>
         /// <param name="strDesPath">生成html文件目标路径</param>
         private void getHTML(string strURL,string strDesPath)
         {            
             WebRequest request = WebRequest.Create(strURL);
             WebResponse response = request.GetResponse();
             Stream resStream = response.GetResponseStream();
             StreamReader sr = new StreamReader(resStream);
             StreamWriter sw = new StreamWriter(strDesPath, false, System.Text.Encoding.Default);
             sw.Write(sr.ReadToEnd());
             resStream.Close();
             sr.Close();
             sw.Close();
        
         }

        调用时如下调用就可以了:getHTML("");

        利用第二种方法。写个windows服务程序,开机自动运行,每隔指定时间自动生成首页。这样就可以实现动态首页的定时静态更新了,而且完全自动不必手工处理。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ASP.NET生成HTML静态页的一个类
Render 方式生成html
发送Http请求调用webService
ASPX文件转HTML
asp.net页面静态化
aspx页面生成静态的HTML页面的三种方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服