你的位置:首页 > 软件-代码-工具

首页访问慢,生成静态HTML的方法

October 27, 2011 | tags | views
Comments 0

首页访问慢,生成静态HTML的方法

1、ASP两种简单的生成静态首页的方法

为什么要生成静态首页?
1、如果你首页读取的数据库次数比较多,速度很慢,而且占用很多服务器资源。使用静态页面访问速度当然快多了
2、搜索引擎容易搜索到
3、如果程序出问题,也能保证首页能访问。
4、其他的太多,自己想:)
应用方式:
如果你的首页是index.asp,你可以生成index.htm (默认访问顺序必须是index.htm,index.asp)。这样访问者第一次访问到你的网站的时候打

开的是index.htm 。你可以把网站首页的链接做成index.asp,这样从网站任何一个页面点击首页的链接出现的就是index.asp,这样保证的信息

更新的及时性(毕竟index.htm需要每次手动更新)。
方法一:
直接将首页文件包含在表单文本框中,将首页代码最为数据提交,然后生成静态页面。
代码如下:
<%
'------------------------------------------------------------
'
使用表单提交生成静态首页的代码
'
确保你的空间支持FSO,且首页代码内容较少
'
------------------------------------------------------------
dim content
content
=Trim(Request.Form("content"))
if content<>"" then
call makeindex()
end if
sub makeindex()
  
Set Fso = Server.CreateObject("Scripting.FileSystemObject")
  Filen
=Server.MapPath("index.htm")
  
Set Site_Config=FSO.CreateTextFile(Filen,trueFalse)
  Site_Config.Write content
  Site_Config.Close
  
Set Fso = Nothing
  Response.Write(
"<script>alert('已经成功生成首页!')</script>")
end sub
%
>
<form name="form1" method="post" action="">
<textarea name="content">
<!-- #i nclude file="index.asp" -->
</textarea>
<br>
<input type="submit" name="Submit" value="提交">
</form>

缺点:
1、如果首页中包括<@ ..>标记,会提示出错。
2、如果首页代码较长,用表单无法提交过去(表单数据长度有一定的限制)。
解决方案:
1、去掉index.asp中的<@ >标记
2、使用eWebEditor,提交支持大数据(能自动分割)
优点:
可以在生成时对内容实时修改。

方法二:
直接使用XMLHTTP获取index.asp的代码

<%
'----------------------------------------------------------
'
使用XMLHTTP生成静态首页的代码
'
Curl 为你的首页地址,确保你的空间支持FSO
'
-----------------------------------------------------------
dim read,Curl,content
Curl
="http://www.xx0123.com/index.asp"
read
=getHTTPPage(Curl)
if read<>"" then
  content
=read
  
call makeindex()
end if
sub makeindex()
  
Set Fso = Server.CreateObject("Scripting.FileSystemObject")
  Filen
=Server.MapPath("index.htm")
  
Set Site_Config=FSO.CreateTextFile(Filen,trueFalse)
  Site_Config.Write content
  Site_Config.Close
  
Set Fso = Nothing
  Response.Write(
"<script>alert('已经成功生成首页!')</script>")
end sub
Function getHTTPPage(url)
  
dim http
  
set http=Server.createobject("Microsoft.XMLHTTP")
  Http.open 
"GET",url,false
  Http.send()
  
if Http.readystate<>4 then
    
exit function
  
end if
  getHTTPPage
=bytesToBSTR(Http.responseBody,"GB2312")
  
set http=nothing
  
if err.number<>0 then err.Clear
End function
Function BytesToBstr(body,Cset)
  
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 
= Cset
  BytesToBstr 
= objstream.ReadText
  objstream.Close
  
set objstream = nothing
End Function
%
>

 

http://www.cnblogs.com/radman/



作者:成都木木SEO 转载请注明出处。
联系木木SEO:QQ:631359592 电话:13408026909
    相关文章:



发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。