Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo generar una página HTML para una página ASP?

¿Cómo generar una página HTML para una página ASP?

Cómo generar páginas web estáticas en ASP

A medida que aumenta el número de visitas al sitio web, cada vez que se leen datos de la base de datos, se produce a expensas de la eficiencia. Muchas personas que utilizan ACCESS como base de datos lo tendrán. más experiencia en páginas estáticas. Además, también se le dará prioridad a la hora de realizar búsquedas. Una práctica popular en Internet es escribir el código fuente de datos en la base de datos y luego leer los datos de la base de datos para generar una superficie estática, lo que prácticamente aumenta la cantidad de bases de datos. Generar directamente páginas estáticas a partir de páginas ASP existentes ahorrará mucho.

El siguiente ejemplo son tres páginas dinámicas index.asp?id=1/index.asp?id=2/index.asp?id=3/, que generan index1.htm e index2.htm respectivamente. , index3.htm. ndex1.htm, index2.htm e index3.htm existen en el siguiente directorio raíz:

lt;

dim strUrl, Item_Classid, id, FileName, FilePath, Do_Url, Html_Temp

Html_Temp="lt;ULgt;"

Para i=1 a 3

Html_Temp = Html_Tempamp;"lt;LIgt;"

Item_Classid = i

FileName = "Index"&Item_Classid&".htm"

FilePath = Server.MapPath("/")&"/")&" \"FileName

Html_Temp = Html_Temp&FilePath&"lt;/LIgt;"

Do_Url = "http://"

Doo_Url = Do_Urlamp .Solicitud.

Request.ServerVariables("SERVER_NAME")&"/main/index.asp"

Do_Url = Do_Urlamp;"?Item_Classid="amp; Item_Classid

strUrl = Do_Url

dim objXmlHttp

set objXmlHttp = Server.CreateObject("Microsoft.SERVER_NAME")&"/main/index.asp"

Do_Url = Do_Urlamp;"?CreateObject (" Microsoft.XMLHTTP")

objXmlHttp.open "GET", strUrl, false

objXmlHttp.send()

Dim binFileData

binFileData = objXmlHttp.responseBody

Dim objAdoStream

set objAdoStream = Server.CreateObject("ADODB.Stream")

set m = ms(0)

tmp_str = get_exe_code(m.submatches(0))

Si ms.countlt;gt;0 entonces

establece m = ms(0)

p>

tmp_str = get_exe_code(m.submatches(0))

contenido = re.replace(content, tmp_str)

else

salir hacer

finalizar si

bucle

establecer m = nada

establecer ms = nada

re .pattern= "^\s*="

aspEnd=1

aspStart=inStr(aspEnd, "lt;")

content = re.replace (contenido, "lt;") contenido, "lt;") 2

set re1=new RegExp

re1.ignorecase = true

re1.global = false

re1.pattern = "respuesta\.Write(. )"

hacer mientras aspStartgt;aspEnd 1

execode = execodeamp;vbcrlfamp;" hughchiu_rtcode = hughchiu_rtcodeamp; """ amp;replace(replace(Mid(content,aspEnd,aspStart-aspEnd-2),"""",""""""), vbcrlf, """amp;vbcrlfamp;vbcrlfamp;" "") y;""""y;vbcrlf

aspEnd = inStr(aspStart,content,"

\gt;") 2

tmp_str = Mid(content, aspStart, aspEnd-aspStart-2)

hacer

set ms = re1.execute(tmp_str )

si ms.countlt;gt;0 entonces

establezca m = ms(0)

tmp_str = re1.replace(tmp_str, " hughchiu_rtcode = hughchiu_rtcodeamp ;"amp; m. submatches(0))

de lo contrario

salir

finalizar si

bucle

set m = nada

set ms = nada

execode = execodeamp; re.replace(tmp_str, "hughchiu_rtcode = hughchiu_rtcodeamp;")

aspStart= inStr(aspEnd, content, "lt;") 2

bucle

set re1 = nada

set re=nada

execode = execode&vbcrlfamp;" hughchiu_rtcode = hughchiu_rtcodeamp;"" amp;replace(replace(Mid(content, aspEnd), """", """"""), vbcrlf, """amp;vbcrlfamp;""" ) amp ;""""amp;vbcrlf

get_exe_code = "lt;"amp;execodeamp;"\gt."

Función final

función asp2html (nombre de archivo )

código tenue

código = reemplazar( reemplazar( get_exe_code(nombre de archivo), " hughchiu_rtcode = hughchiu_rtcodeamp;"""""amp;vbcrlf, "" ), "lt;" , "" ), "\gt;", "" )

'respuesta.Escribir(código)

ejecutar(código)

'response.Write( hughchiu_rtcode )

asp2html = hughchiu_rtcode

función final

gt

Ejemplo de uso:

set fso= CreateObject("Scripting.FileSystemObject")

set f=fso.CreateTextFile( server.mappath( "youpage.htm" ), true )

f .WriteLine ( asp2html("youpage.asp") )

f.close

establecer f = nada

>

set fso = nada

Mira, aunque este es un método nuevo, todavía requiere soporte de fso