consulta la disponibilidad de un nombre de dominio:

+ info

Llámanos de todo México:

(55) 5351-1400

(sin costo)

Server Side Includes

Explicación de Server Side Includes o SSI.

herramientas
del artículo

¿Qué son las Server Side Includes?

Las Server Side Includes (SSI) son comentarios especiales dentro de paginas HTML que, cuando son leídas por el servidor realizan acciones especiales. Estas acciones van desde incluir un pedazo de HTML hasta ejecutar un programa e incluir el resultado dentro de la página.

En la mayoría de los servidores corriendo Apache los archivos que contienen SSI tienen que tener extensión .shtml en vez de sólo .html.

Las SSI eran una de las armas más importantes en el arsenal de cualquier persona que escribía código HTML. Si tu ISP te ofrece SSI, tienes en tus manos una verdadera varita mágica. (Si no, simpre puedes contratar a alguien que si te las ofrezca :). Este documento te enseñará cómo usar esa varita para hacer trucos maravillosos.

El formato de las SSI

Todas las directrices al servidor están disfrazadas como un comentario de HTML, esto es por si llegara a fallar la lectura del servidor. Toda directriz tiene el siguiente formato:

<!--#comando arg1="valor1" arg2="valor2" -->

Cada comando toma diferentes argumentos y la mayoría de las veces sólo uno a la vez. A continuación se presenta una relación de los comandos y sus argumentos:

  • config: config controla varios aspectos del análisis sintáctico. Tiene tres argumentos válidos:

    • errmsg controla el mesaje que se manda al usuario si ocurre un error al analizar la directriz. Cuando ocurre un error, se apunta en la bitácora de errores del servidor.
    • timefmt maneja la manera en que el servidor ordena las fechas. Es compatible con la librería de strftime en UNIX.
    • sizefmt determina el formato al mostrar el tamaño de un archivo. Las opciones incluyen bytes para un formato del tipo 1,234,567, o abbrev para mostrar los resultados en kilobytes o megabytes.

  • include: Esta directriz inserta el texto de otro archivo en el documento actual. Todo archivo está sujeto a los permisos de lectura comunes. Esta directriz acepta dos argumentos:

    • virtual indica el path a un documento en el servidor. El path es referente al directorio raíz del servidor de web. La barra de navegación a la izquierda arriba de este documento está incluida de esta manera.
    • file: recibe un nombre de archivo relativo al directorio del documento y inserta su contenido en vez del include. La expresión "../" no puede ser usada en el archivo ni tampoco paths absolutos.

  • echo: echo inserta el valor de algunas de las variables SSI (ver abajo). Todas las fechas puestas de esta manera están sujetas a la configuración dada por config o timefmt.

  • timefmt: El único argumento válido para este comando es var que toma como valor el nombre de la variable que echo va a sacar.

  • fsize: fsize saca el tamaño del archivo especificado. Los argumentos son los mismos que para include. El formato de este comando es determinado por el parámetro sizefmt en el comando config.

  • flastmod: flastmod inserta en el documento la fecha de última modificación de un archivo controlado por timefmt en config. Los tags son los mismos que para include.

  • exec: exec ejecuta un comando en el shell de UNIX o un programa de CGI. Los argumentos son:

    • cmd ejecuta lo que se ponga usando /bin/sh. Todas las variables indicadas abajo pueden ser usadas en este comando.
    • cgi: ejecuta el path virtual dado e incluye su salida en la página. El servidor no checa si insertas algo como un GIF así es que se cauteloso. Lo que sí, hace es interpretar encabezados de HTTP Location: [URL]

Variables de Ambiente de SSI

Puedes incluir varias variables en documentos que contienen Server Side Includes. Ademas de las variables de CGI, éstas son especiales para SSI:

  • DOCUMENT_NAME: El nombre del archivo donde esta la directriz.
  • DOCUMENT_URI: El path virtual al documento (como /foo/bar.shtml).
  • QUERY_STRING_UNESCAPED: La query string que viene después de una ? en un URL (como en /bar.shtml?datos=unos%20datos ).
  • DATE_LOCAL: La fecha actual en la zona horaria donde está el servidor. Puede ser modificada por timefmt en el comando config.
  • DATE_GMT: Lo mismo que DATE_LOCAL pero en la zona del meridiano de Greenwich.
  • LAST_MODIFIED: La fecha de última modificación del documento. Sujeto a tmfmt al igual que las otras fechas.

Y hasta aquí llega este pequeño tutorial. Esperamos que sea útil porque los Server Side Includes son una de las herramientas más importantes en el mundo de la WWW.

  • Paga tu cuenta de webhosting en BBV Bancomer
  • Paga tu cuenta de webhosting en Banamex
  • Paga tu cuenta de webhosting en PayPal
  • Paga tu cuenta de webhosting con American Express
  • Paga tu cuenta de webhosting con tu tarjeta Visa
  • Paga tu cuenta de webhosting con tu tarjeta MasterCard