ASP語言轉HTML網站靜態化操作的小竅門
分類:東莞網站制作  日期:2013-4-22  瀏覽:次  點擊返回
標簽: 網站建設基礎知識  文章來源:東莞市洪福網站制作公司
動態網站靜態化操作的目的就是減輕服務器的讀取壓力,給用戶一個良好的瀏覽體驗。而網站靜態化操作分為偽靜態和真正的靜態兩種。偽靜態一般是利用重寫規則生成,其實還是要讀取數據庫進行轉換。而真正的靜態化是生成html或htm這種后綴的文件,在瀏覽時不會查詢數據庫的數據。
 
在網站制作中常采用以下三種靜態化網站方式:
 
1、 利用模板技術進行替換
 
2、 利用服務器FSO組件生成
 
3、 利用adodb.stream組件進行生成
 
 
利用模板技術進行生成,相對來說比較的穩定,但是理解起來相對復雜;利用FSO方式需服務器上支持此組件;Stream這種方式個人覺得是最簡單的,但是受網絡的影響比較大,因為這種方式要動態實時的進行數據交換,如果網絡不穩定或一次生成文件時間比較長的話,往往會失敗。
 
ASP默認腳本超時時間是90秒,可以在文件頭那里加上<%Server.ScriptTimeOut=1000000%>這樣,一般就不會超時了。
 
采用STREAM這種方式生成文件,在默認時間里大約可以生成600個文件,當然是在網速還行情況下。
 
如果我們要把自己的網站進行靜態化的話,建議在選主機時盡量的選擇獨立IP,優質的服務商。這樣會讓我們網站出錯機率大大降低。
 
下面附上STREAM組件在生成時所必用的源碼:
 
 
<%
 
function getHTTPPage(url)
dim Http
set Http=server.createobject("Microsoft.XMLHTTP")
Http.open "post",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"utf-8")
set Http=nothing 
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
 
sub makeHtml(content,url)
Set objStream=Server.CreateObject("ADODB.Stream")
    With objStream
    .Open
    .Charset="utf-8" '編碼,這里你可以改成任何編碼
    .Position=objStream.Size
    .WriteText=content '模版+數據 寫入內容
    .SaveToFile server.mappath(url),2 '生成文件路徑
    .Close
    End With
Set objStream=Nothing
end sub
%>
 
以上源碼適用于ASP。等小編最近把手里事情處理完后,再貼上其它語言所用的源代碼。
 
洪福科技是東莞地區專業網站制作與策劃的本土化服務公司,歡迎您的光臨。

域名注冊 |  企業郵箱 |  虛擬主機 |  網站設計 |  網站建設報價 |  網站推廣 |  網站建設 |  聯系我們 |  Sitemap

洪福科技是東莞正規網頁設計公司,提供東莞建站、網絡推廣、企業郵箱、域名注冊和虛擬主機服務,專注于中小企業網站建設和網絡營銷服務,共享網絡開放平臺!

地址:廣東省東莞市鴻福東路紅棉路24號  郵編:523000  電話:0769-3321 8176   傳真:0769-8987 5073    郵箱:[email protected]

Copyright(?) 2009-2013 東莞市洪福科技有限公司 All Rights Reserved. 版權所有  粵ICP備09061858號  

为什么开心农场不能玩