Hay muchas formas de implementar páginas HTML estáticas, pero no todos saben cómo implementar páginas estáticas. Entonces, ahora, el editor de Foxin le presentará cómo implementar páginas estáticas en ASP. Los amigos interesados vienen y echen un vistazo.
1. Use ISAPI_REWrite para vincular dinámicamente y reescribir la URL estática HTML. ISAPI_REWRITE es un componente DLL, y Re_Write es un módulo en IIS. Esta implementación del filtro utiliza expresiones regulares para asignar URL web dinámicas a URL estáticas. Por ejemplo, puede convertir News.asp? Id = 95 en noticias/95.html a través de re_write. La expresión regular de mapeo se establece en el archivo httpd.ini.
Para dar un pequeño ejemplo: para tratar con el giro de la página de datos, el método de escritura es:
más _ <%= página%> _ <%= type%>. html (nota: la página es el número de páginas giradas, el tipo es el tipo de datos) Formulario de expresión: More_1_95.html
Si gira a la página siguiente, es: More_2_95.html, y continúa el bucle de la página siguiente, es:
más_3_95.html, y así sucesivamente.
Sin embargo, debe agregar el siguiente código al archivo httpd.ini:
Rewriterulle /more_(d+)_(d+)
Si su programa dinámico tiene múltiples parámetros a aprobar, agregue múltiples (d+), como sigue:
Rewriterulle /more_(d+)_(d+)_(d+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n, i]
Ventajas: básicamente no hay necesidad de hacer ningún cambio en el programa. PROBLEMA: Para lograr esto, debe controlar IIS, por lo que cuando alquila el servidor de otra persona, primero debe comunicarse con el proveedor de servicios. (Por supuesto, esto es para ASP, no hay necesidad de usar el tutorial ASP.NET: puede colocar directamente el ensamblaje de DLL en el contenedor en el programa y luego configurarlo adecuadamente)
2. Mecanismo de manejo de errores 404 de IIS: al personalizar los errores, gire a la página de procesamiento que preparamos. Sin embargo, esta escalabilidad debe estudiarse, y los requisitos generales para el procesamiento del programa también son altos, y no es muy adecuado para aplicaciones prácticas.
Primero, establezca propiedades del sitio: errores personalizados
Encuentre el error HTTP 404 y luego edite las propiedades -> Tipo de mensaje y seleccione URL-> URL para completar "/index.asp", o su página de manejo de errores.
De esta manera, por ejemplo, cuando un usuario o una araña visita http: //cn/12345.html (12345 es la identificación del artículo en el tutorial de la base de datos). Como algunas páginas no existen, se activó un error 404. Recurrir a index.asp
Agregar en index.asp
La copia del código es la siguiente:curromain = request.ServerVariAbles ("http_host") 'Nombre de dominio de acceso actual
CurrUrl = reemplazar (request.serverVariAbles ("query_string"), "404; http: //" & currdomain & ": 80", "") 'Currurl accedido
La currurl en este momento debería ser: 12345.html.
3.
1. Cree una nueva información de carpeta (porque la URL de la página de la información de acceso final es http: // localhost/info/? 1.html)
2. Cree un nuevo archivo predeterminado.asp en la carpeta de información (esa es la página de la página de inicio predeterminada)
El contenido del archivo predeterminado.asp es el siguiente
La copia del código es la siguiente:<%
curromain = request.ServerVariAbles ("http_host") 'Nombre de dominio de acceso actual
CurrUrl = reemplazar (request.serverVariAbles ("QUERY_STRING"), "404; http: //" & currdomain & "/info/?", "") 'Curror accedido a URL
id = reemplazar (Currurl, ". Html", "")
%>
donde la identificación es el parámetro aprobado
Si hay múltiples parámetros, puede convertir pseudo-estadáticamente la URL en información/? 1-2-3.html
Entre ellos, 1, 2 y 3 representan los valores de tres parámetros, y las cadenas separadas pueden propuestos por separado.
Página estática HTML real
Escriba el código HTML en un archivo y genere un archivo en formato .html
La copia del código es la siguiente:<%
filename = "test.htm"
Si solicita ("cuerpo") <> "" entonces
establecer fso = server.createObject ("scripting.filesystemObject")
Establecer htmlwrite = fso.createTextFile (server.mappath ("" nombre de archivo ""))
htmlwrite.write "<html> <head> <title>" request.form ("title") "</title> </head>"
htmlwrite.write "<body> Contenido de título de salida:" request.form ("title") "<Br/> de salida de contenido de cuerpo:" request.form ("body") "</body> </html>"
htmlwrite.close
establecer fout = nada
Establecer FSO = nada
final si
%>
<form de nombre = "form" método = "post" action = "">
<input name = "title" value = "title" size = 26>
<br>
<Textarea name = "Body"> Body </extarea>
<br>
<br>
<input type = "enviar" name = "enviar" value = "generar html">
</form>
2. Sin embargo, es muy inconveniente generar archivos HTML de acuerdo con el método anterior. El segundo método es utilizar la tecnología de plantilla para reemplazar el valor del código especial en la plantilla con el valor aceptado del formulario o campo de base de datos para completar la función de plantilla; Para generar archivos HTML a partir de todos los códigos de plantilla que finalmente fueron reemplazados. Esta tecnología se usa más, y la mayoría de los CM usan este método.
Template.htm '// archivo de plantilla
La copia del código es la siguiente:<html>
<Evista>
<title> $ title $ por aspid.cn </title>
</ablo>
<Body>
$ cuerpo $
</body>
</html> testtemplate.asp '// generar html
<%
Dim FSO, htmlwrite
Dim strtitle, strcontent, strout
'// crear un objeto del sistema de archivos
establecer fso = server.createObject ("scripting.filesystemObject")
'// Abra el archivo de plantilla web y lea el contenido de plantilla
Establecer htmlwrite = fso.opentextfile (server.mappath ("Template.htm"))
Struts = F. Readall
htmlwrite.close
strTextle = "Título de la página web generada"
strContent = "Contenido de la página web generada"
'// reemplazar las etiquetas en la plantilla con contenido real
strout = reemplazar (strout, "$ title $", strtitle)
strout = reemplazar (strout, "$ body $", strcontent)
'// Cree la página estática que se generará
Establecer htmlwrite = fso.createTextFile (server.mappath ("test.htm"), verdadero)
'// Escribir contenido a la página web
htmlwrite.writeLine strout
htmlwrite.close
Response.WRITE "¡La página estática se generó con éxito!"
'// libera el objeto del sistema de archivos
establecer htmlwrite = nada
Establecer FSO = nada
%>
Este artículo presenta cómo implementar páginas estáticas en ASP. Los amigos que lo necesitan pueden referirse a él.