首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

动态网页静态化是什么意思,怎么实现

2012-09-14 
动态网页静态化是什么意思,如何实现?动态网页静态化是什么意思,如何实现?用动态页面生成静态页面可以理解,

动态网页静态化是什么意思,如何实现?
动态网页静态化是什么意思,如何实现?用动态页面生成静态页面可以理解,动态网页静态化到底是个什么概念啊,不懂迷茫中……点拨下小弟,不胜感激!

[解决办法]
简单的讲法就是我们通常认为的.html htm为静态页面

动态网页静态化就是把跟数据库交互操作的网页使其变为一种静态!

大部分都是用模板来替换!~要么就是用urlrewrite做成假的静态!!
[解决办法]
动态页面如aspx,php等以html,shtml等形式表示
可用模板或urlrewriter静态化
public static bool WriteFile(string strText,string strContent,string strAuthor) 

string path = HttpContext.Current.Server.MapPath("/news/"); 
Encoding code = Encoding.GetEncoding("gb2312"); 
string temp = HttpContext.Current.Server.MapPath("/news/template.html"); 
StreamReader sr=null; 
StreamWriter sw=null; 
string str="";
try 

sr = new StreamReader(temp, code); 
str = sr.ReadToEnd(); 

catch(Exception exp) 

HttpContext.Current.Response.Write(exp.Message); 
HttpContext.Current.Response.End(); 
sr.Close(); 


public static string getUrltoHtml(string Url) 

errorMsg = ""; 
try 

System.Net.WebRequest wReq = System.Net.WebRequest.Create(Url); 
System.Net.WebResponse wResp =wReq.GetResponse(); 
System.IO.Stream respStream = wResp.GetResponseStream(); 
System.IO.StreamReader reader = new System.IO.StreamReader(respStream, System.Text.Encoding.GetEncoding("gb2312")); 
return reader.ReadToEnd(); 

catch(System.Exception ex) 

errorMsg = ex.Message ; 

return ""; 



[解决办法]
<LookFor>~/d(\d+)\.html</LookFor>
 <SendTo>~/default.aspx?id=$1</SendTo>

[解决办法]
学习
[解决办法]
还是没太懂,这样做讲一原理,优势所在喽,
多讲点
[解决办法]

C# code
public void CreatHtml()     {         Encoding code = Encoding.GetEncoding("utf-8");         StreamReader sr = null;         StreamWriter sw = null;         string str = null;         System.Net.WebResponse myTemp = null;         System.Net.WebRequest temp = System.Net.WebRequest.Create("http://www.yl918.com");          myTemp = temp.GetResponse();                  sr = new StreamReader(myTemp.GetResponseStream(), code);         //读取         try        {             sr = new StreamReader(myTemp.GetResponseStream(), code);             str = sr.ReadToEnd();          }         catch (Exception ex)         {             throw ex;         }         finally        {             sr.Close();         }         string fileName = "index.html";          //写入         try        {             sw = new StreamWriter(Server.MapPath("~") + "\\" + fileName, false, code);             sw.Write(str);             sw.Flush();          }         catch (Exception ex)         {             throw ex;         }         finally        {             sw.Close();         }     } 作者:David.xu 文章出处:yl加油吧 (http://www.yl918.com/17579.aspx)
[解决办法]
为什么要让网页静态化,生成静态的程序来做网站的好处?
如今不少客户在QQ上咨询我们,网站生成静态HTML有什么好处,现在归纳直来一并答复为什么让网页”静”下来,生成静态HTML有什么好处呢?
我们的回答:
在三年前,有百分之八十的网站要求做成动态的。也就是从那个时候也就是ASP的发展高峰期。一些静态网页也要求做成动态网站。但是这二年来,网站要求做成静态的。也就是网页要求静态化。
为什么会有这样的变化?到底意味着什么?


目前网页HTML静态化是利用其它的动态技术生成HTML静态页面,还不是静态网站。因为的确是这样的,生成HTML静态网页有一定的好处。
一、加快页面打开浏览速度,静态页面无需连接数据库打开速度较动态页面有明显提高;
二、有利于搜索引擎优化SEO,Baidu、Google都会优先收录静态页面,不仅被收录的快还收录的全;
三、减轻服务器负担,浏览网页无需调用系统数据库;
四、网站更安全,HTML页面不会受Asp相关漏洞的影响;
观看一下大一点的网站基本全是静态页面,而且可以减少攻击,防sql注入。数据库出错时,不影响网站正常访问。
生成html文章虽操作上麻烦些,程序上繁杂些,但为了更利于搜索,为了速度更快些,更安全,这些牺牲还是值得的。
说法一:
1、省掉了服务器处理时间和调用数据库的时间访问速度比一般动态网站快10-20倍;
2、不用调用数据库服务器端的CPU调用大大减少增加服务器的性能;
3、生成静态路径利用搜索引擎的抓取和收录;
4、在排名中静态页面的排名权重要高于动态路径的页面。
说法二:
1、安全,静态页面从理论上讲是没有攻击漏洞的;
2、没有数据库访问或减少服务器对数据响应的负荷,速度快;
3、化化引擎,易于搜索引擎收录,搜索引擎比较喜欢收录静态页面;
4、降低服务器的承受能力,因为其不需要解析就可以返回客户端,因此减少了服务器的工作量,同时也减少了数据库的成本;
5、有意义的文件名,提高了可用性(对中文似乎就没这个优势了吧) 。
说法三:
提问:ASP生成静态HTML后更有利于搜索引擎收录吗?为什么?
答:是的,静态HTML更有利于搜索引擎收录。
因为静态网页和动态网页的区别在于动态网页可以给于浏览者权限,而搜索引擎抓取的时候是以游客身份进入的,所以不容易被抓取和收录,而静态网页由于不存在页面权限问题,所以更容易被收录,相对来说如果你的动态页面没有加任何权限的话也同样容易备收录!例如不生成静态页面的博客ASP PHP .net CGI的论坛只要没有访问权限限制都会被收录!
从以上的观点可以看出生成静态页面的好处。现在知名、主流的大站基本上都静下来了。
对于我们承接网站的用户我们都可以给您提供生成静态页面的服务。价格优惠。欢迎您查询!

转的,文章出处:http://hi.baidu.com/yangczcz/blog/item/31fd84502c4971878c5430cd.html
[解决办法]
好帖,顶!
[解决办法]
长见识了..........
[解决办法]
部分静态化是对的
[解决办法]

C# code
    public bool WriteFile(string ArticleTitle, string ArticleContent, string ArticleID)    {        string OutPutPath = HttpContext.Current.Server.MapPath("HTMLPage/");        Encoding encoding = Encoding.GetEncoding("gb2312");        // 读取模板文件        string ModelTemp = HttpContext.Current.Server.MapPath("ModelHTML.htm");        StreamReader sr = null;        StreamWriter sw = null;        string str = "";        try        {            sr = new StreamReader(ModelTemp, encoding);            str = sr.ReadToEnd(); // 读取文件        }        catch (Exception exp)        {            HttpContext.Current.Response.Write(exp.Message);            HttpContext.Current.Response.End();            sr.Close();        }        string HtmlFilename = DateTime.Now.ToString("yyyyMMddHHmmss_") +ArticleID+ ".html";        // 替换内容        str = str.Replace("PageTitle", ArticleTitle); //模板页中的PageArticle        str = str.Replace("ArticleTitle", ArticleTitle);        str = str.Replace("ArticleContent", ArticleContent);        // 写文件        try        {            sw = new StreamWriter(OutPutPath+HtmlFilename, false, encoding);            sw.Write(str);            sw.Flush();        }        catch (Exception ex)        {            HttpContext.Current.Response.Write(ex.Message);            HttpContext.Current.Response.End();        }        finally        {            sw.Close();        }        return true;    }
[解决办法]
用户请求浏览页面时,由于服务器不需要运行库动态生成HTML、访问数据库等操作,可以明显提高页面浏览的速度,减轻服务器的运行负担
不过某些情况也不适合网页静态化,因为网页静态化本身就是ASP.NET程序动态生成HTML代码并存储为单独的物理文件到磁盘,这个过程过于频繁将导致服务器压力过大。在这方面,编程者要根据WEB项目的实际需要,权衡是否需要使用网页静态化技术。
有利于搜索引擎收录网站页面信息
http://www.cnblogs.com/JeffreyZhao/archive/2009/07/05/talk-about-page-statilization.html
[解决办法]
用户请求浏览页面时,由于服务器不需要运行库动态生成HTML、访问数据库等操作,可以明显提高页面浏览的速度,减轻服务器的运行负担 
不过某些情况也不适合网页静态化,因为网页静态化本身就是ASP.NET程序动态生成HTML代码并存储为单独的物理文件到磁盘,这个过程过于频繁将导致服务器压力过大。在这方面,编程者要根据WEB项目的实际需要,权衡是否需要使用网页静态化技术。 
有利于搜索引擎收录网站页面信息 
http://www.cnblogs.com/JeffreyZhao/archive/2009/07/05/talk-about-page-statilization.html

热点排行