ASP secara teratur menghasilkan kode HTML statis, yang sangat membantu dalam mengurangi tekanan server.
Salin kode sebagai berikut:<%
'Tentukan apakah akan menghasilkan HTML baru
jika Application(cache_asptohtml_date)= kemudian
Application.Lock
Application(cache_asptohtml_date)=now()
Application.Unlock
Panggil aspTohtml
Response.Redirect(index.html)
end if
if DateDiff (s, Application(cache_asptohtml_date),Now)> 100 lalu 'Bandingkan perbedaan jumlah detik antara waktu pembaruan terakhir dan
timeApplication.Lock
saat iniApplication(cache_asptohtml_date)=now()
Application.UnLock
Panggil aspTohtml
Response.Redirect(index.html)
Else
Response.Redirect(index.html)
Berakhir jika
'Dapatkan direktori saat ini!
fungsi getpath
if Request.ServerVariables(SERVER_PORT)<>80 lalu
UserUrl = http://&Request.ServerVariables(SERVER_NAME)& : & Request.ServerVariables(SERVER_PORT)& Request.ServerVariables(URL)
else
UserUrl = http://&Request.ServerVariables(SERVER_NAME)& Request.ServerVariables(URL)
berakhir jika
getpath=left(UserUrl,InstrRev(UserUrl,/))
fungsi akhir
sub aspTohtml
'----------------------------------------------- -- ----------
'Gunakan XMLHTTP untuk menghasilkan kode untuk beranda statis'Curl
adalah alamat beranda Anda, pastikan ruang Anda mendukung FSO
'-------------------------- --------------------------------
redupkan baca, Curl, konten
Curl=getpath&home.asp
read=getHTTPPage(Curl)
if baca<> lalu
konten=baca
Set Fso = Server.CreateObject(Scripting.FileSystemObject)
Filen=Server.MapPath(index.html)
Set Site_Config=FSO.CreateTextFile(Filen,true, False)
Site_Config.Tulis konten
Site_Config.Close
Set Fso = Tidak ada
akhir jika
End sub
Fungsi getHTTPPage(url)
redup http
set http=Server.createobject(Microsoft.XMLHTTP)
Http.open GET, url,false
Http.send()
jika Http.readystate<>4 lalu
keluar dari fungsi
berakhir jika
getHTTPPage=bytesToBSTR(Http.responseBody,GB2312)
setel http=tidak ada
jika err.number<>0 lalu err.Hapus
Fungsi
Fungsi Akhir
BytesToBstr(body,Cset)redupkan objstream
set objstream = Server.CreateObject(adodb.stream)
objstream.Type = 1
objstream.Mode =3
objstream.Buka
objstream.Tulis isi
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = none
Fungsi Akhir
%>
ASP secara teratur menghasilkan halaman statis (HTML) 2.
Salin kode sebagai berikut:
<%
set fs= server.createobject(scripting.filesystemobject)
file=server.mappath(time.txt)
disetel txt=fs.opentextfile(file,1,true)
jika bukan txt.atendofstream maka
times=txt.ReadLine
Else
respon.write <br /><!--Sudahkah Anda menemukan bahwa time.txt sudah mulai dibuat!-- >
HtmlPage = time .txt '//Nama file HTML yang dihasilkan
Templat = SEKARANG()
Setel FSO = Server.CreateObject (Scripting.FileSystemObject)
Setel FileOut = FSO.CreateTextFile(Server.MapPath (HtmlPage))
FileOut.WriteLine Templat
FileOut.Close
Set FSO = Tidak ada
akhir Jika
Jika tanggaliff(s,times,NOW()) > 3600 Lalu '//Waktu sejak pembaruan terakhir lebih besar dari 3600 Detik, perbarui
respon.tulis <br /><!--Mulai perbarui setelah waktu berlalu-->
kode = Berikut adalah kode html yang perlu dihasilkan '//Ada banyak cara untuk mendapatkan kode tersebut
'//Gunakan FSO untuk menghasilkan halaman HTML
HtmlPage = index.html '//Nama file HTML yang dihasilkan
Template = kode
Set FSO = Server.CreateObject (Scripting. FileSystemObject)
Set FileOut = FSO.CreateTextFile(Server.MapPath (HtmlPage))
FileOut.WriteLine Template
FileOut.Close
Set FSO = Tidak Ada
'//Gunakan FSO untuk menghasilkan file time.txt
HtmlPage = time.txt '//Nama file HTML yang dihasilkan
Templat = SEKARANG()
Set FSO = Server.CreateObject (Scripting.FileSystemObject)
Set FileOut = FSO.CreateTextFile(Server.MapPath ( HtmlPage))
FileOut.WriteLine Template
FileOut.Close
Set FSO = Tidak Ada
Lagi
respon.write <br /><!-- Telah berlalu&tanggaliff(s,times,NOW())&detik!-->
End If
%>