网站静态化思路及代码分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网站静态化思路及代码分析

网站静态化思路及代码分析 静态化是有很大好处的。最值得称道的应该是加快下载速度,更利于搜索引擎的抓取,这两点对一个企业网站来说应该比较重要吧。 一般的静态化是通过fso组件读取网站模板的内容,然后替换其中的特定字符,生成静态页面,这是个不错的想法,如果你要自己写一个网站,建议你用这种办法,因为比较稳定。而且如果想以后更换网站界面也相当容易,只需修改模板而无需更改程序。这个办法很多高手已经说得很明白了,推荐一个: /Blog/zjh/265.html 然而很不幸,很多公司的网站已经做好,而且每一页都是html中夹杂大量asp代码的形式,没有模板,功能也没有模块化,如果想仍用以上方法进行静态化处理,其复杂程度相当于重做一个网站。 提出一个简单宜用的解决办法。不用模板、不用修改程序,非常便捷。利用XMLHTTP对象及其方法。他的原理是将已有的asp网页内容一次性读取出来,然后写到静态页中,实现网站的静态化重构。 现在以生成 的首页为例,介绍一下这种方法,代码如下: Url=/default.asp ‘定义动态首页 wstr = GetPage(Url) ‘把动态首页的内容全部读取出来 Set fs=Server.CreateObject(Scripting.FileSystemObject) Set CrFi=fs.CreateTextFile(server.MapPath(../)\index.htm) ‘创建静态首页index.htm CrFi.Writeline(wstr) ‘将读取出的内容写入静态页面 set CrFi=nothing ‘关闭两个对象 set fs=nothing 以下两个函数涉及到xmlhttp对象和方法的使用,如果能看懂就看,看不懂直接调用就行。 Function GetPage(url) ‘此过程的功能是实现把asp网页的内容一次性读取出来。 dim Retrieval Set Retrieval = CreateObject(Microsoft.XMLHTTP) With Retrieval .Open Get, url, False , , .Send GetPage = BytesToBstr(.ResponseBody) End With Set Retrieval = Nothing End Function Function BytesToBstr(body)‘字符转换 dim objstream set objstream = Server.CreateObject(adodb.stream) objstream.Type = 1 objstream.Mode =3 objstream.Open objstream.Write body objstream.Position = 0 objstream.Type = 2 objstream.Charset = utf-8 ‘如果是中文页面请用gb2312.,英文页面用utf-8 BytesToBstr = objstream.ReadText objstream.Close set objstream = nothing End Function 首页的静态化就完成了,生成为 index.htm 这个静态页,其他的页面也可以按照这个思路进行,利用不同的后缀id值,就可以批量生成所有网页。 两点注意:1、如果是批量生成页面要保证网速,否则程序的运行很容易超出服务器的允许时间。 2、生成英文页面的时候,要保证原页面上没有汉字或其他语言,否则生成出错。 这种静态化相对比较容易,尤其是那些对那些写的很差劲的网站进行静态化处理。我一直用这种方法给企业静态化处理。 有机会我会把这种方法进一步写成类,方便各位网友调用。 下边说说两种骗人的静态化方案,引起各位注意。 1、 框架伪静态,这种是非常简单而且也是非常便于识别的,它的原理比较简单,就是做一个静态的主框架页面,然后把动态的内容链入副框架内,这个单从它的URL就可以看出眉目,如果整个网站的URL都是一样的,那么就一定是框架伪静态的。这种所谓的静态化不仅达不到优化的目的,而且还不如不优化。 2、 利用组件把asp的辍显示为htm,它主要是利用一个组件强制性的把asp文件的后辍显示为htm,比较有名的组件是MOD REWRITE,这种东西只是在形式上让你感觉已经静态化了,其实仍然是执行动态网页。识别这个也比较容易,那就是看看有没有生成静态页就是了。如果没有生成静态页,显然是骗人的,因为只有动态页才是虚拟的,从数据库中调用数据进行显示,而静态页面一定是独立的。当然,利用这种方案可以起到seo优化作用,但是对访问速度来说,是一点提高都没有的,而且

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档