- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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优化作用,但是对访问速度来说,是一点提高都没有的,而且
您可能关注的文档
最近下载
- T_CATIS 003—2021_商业保理业务会计核算准则.pdf VIP
- 易路HR数智研究院2025年AI在企业人力资源中的应用白皮书2.071页.pdf
- T_CATIS 025—2024(商业保理公司合规管理操作指引).pdf VIP
- 西南15G701-2 混凝土结构轻质填充墙构造.docx VIP
- 国检-2024年2季度南川区城投学府里安居工程国检内容.docx VIP
- 煤矿安全检查培训课件..ppt VIP
- 2025物流无人车商业落地现状、应用场景、市场规模及重点企业分析报告.docx VIP
- 职业指导师四级(理论练习题)练习卷附答案.doc
- 建设工程监理概论 第4版 配套课件.pptx VIP
- 脚手架铜排施工方案.doc VIP
文档评论(0)