Articulo de referencia

El lado del servidor incluye

Server Side Includes ( SSI ) es un lenguaje de scripting del lado del servidor interpretado y sencillo , utilizado casi exclusivamente para la World Wide Web . Resulta muy útil ...

Server Side Includes ( SSI ) es un lenguaje de scripting del lado del servidor interpretado y sencillo , utilizado casi exclusivamente para la World Wide Web . Resulta muy útil para incluir el contenido de uno o más archivos en una página web en un servidor web (véase más abajo), mediante su #includedirectiva. Esto podría ser, por ejemplo, un fragmento de código común en todo un sitio, como el encabezado, el pie de página y el menú de navegación. SSI también incluye directivas de control para funciones condicionales y directivas para llamar a programas externos. Es compatible con Apache , LiteSpeed , nginx , IIS y Jigsaw del W3C . [ 1 ] Tiene sus orígenes en NCSA HTTPd . [ 2 ]

Para que un servidor web reconozca un archivo HTML habilitado para SSI y, por lo tanto, ejecute estas instrucciones, el nombre del archivo debe terminar con una extensión especial , por defecto .shtml, .stm, .shtm, o, si el servidor está configurado para permitirlo, establecer el bit de ejecución del archivo. [ 3 ]

Diseño

Como lenguaje de programación simple, SSI admite solo un tipo : texto. Su flujo de control es bastante simple, admite opciones, pero los bucles no son compatibles de forma nativa y solo se pueden realizar mediante recursión usando include o usando redirección HTTP . [ a ] El diseño simple del lenguaje hace que sea más fácil de aprender y usar que la mayoría de los lenguajes de scripting del lado del servidor, mientras que el procesamiento complejo del lado del servidor a menudo se realiza con uno de los lenguajes de programación más completos . SSI es Turing completo . [ 4 ]

SSI tiene una sintaxis simple: . Las directivas se colocan en comentarios HTML para que, si SSI no está habilitado, los usuarios no vean las directivas SSI en la página, a menos que consulten su código fuente. Tenga en cuenta que la sintaxis no permite espacios entre el encabezado y la directiva. El tutorial de Apache sobre SSI estipula que el formato requiere un espacio antes del que cierra el elemento. [ 5 ]<!--#directive parameter=value parameter=value--><!---->

Ejemplos

Una página web que contenga una cita diaria puede incluirla insertando el siguiente código en el archivo de la página: Con un solo cambio en el archivo, todas las páginas que lo incluyan mostrarán la última cita diaria. La inclusión no se limita a archivos; también puede ser la salida de texto de un programa o el valor de una variable del sistema, como la hora actual.<!--#include virtual="../quote.txt"-->quote.txt

Directivas

Común

Las siguientes son directivas SSI de la época de NCSA HTTPd (década de 1990). [ 2 ] Algunas implementaciones no las admiten todas. [ 6 ]

Directivas de control

Posteriormente, se añaden directivas de control a SSI. Estas incluyen el control de flujo if-elif-else-endif, omnipresente, y la escritura de variables, así como características más exóticas como los bucles, que solo se encuentran en algunas implementaciones.

Véase también

Notas

  1. Sin embargo, se encuentra en algunas implementaciones, incluyendo Jigsaw.

Referencias

  1. 1 2 "Comandos SSI" . W3C . Consultado el 24 de marzo de 2019 .
  2. 1 2 3 "Server Side Includes (SSI)" . Tutorial de NCSA HTTPd . Archivado del original el 3 de marzo de 1997. Recuperado el 24 de marzo de 2019 .
  3. "Configuración del servidor para permitir SSI" . Tutorial de Apache: Introducción a las inclusiones del lado del servidor . La Fundación de Software Apache . Consultado el 24 de junio de 2015 .
  4. "Server Side Includes Turing machine, Jan Schejbal" . Janschejbal.de . Consultado el 6 de diciembre de 2012 .
  5. "Directivas y sintaxis básicas de SSI" . 9 de febrero de 2018. Consultado el 9 de febrero de 2018 .
  6. "Módulo ngx_http_ssi_module" . Documentación de nginx . Consultado el 16 de noviembre de 2021 .
  7. 1 2 "Módulo Apache mod_include" . Documentación de Apache HTTP Server versión 2.4 . Apache Software Foundation . Consultado el 7 de septiembre de 2021 .
  8. 1 2 3 "mod_include" . Servidor HTTP Apache . Consultado el 25 de marzo de 2019 .
  9. "ngx_http_ssi_module" . nginx.org . Consultado el 25 de marzo de 2019 .
  • Referencia de lenguaje de las implementaciones:
    • Apache: Referencia de Apache mod_include . Llama a las directivas "elements".
    • Nginx: Módulo ngx_http_ssi_module . Llama a las directivas "commands".
    • NCSA HTTPd : Referencia SSI original de NCSA HTTPd . Llama a las directivas "comandos".
    • W3C Jigsaw: Comandos de inclusión del lado del servidor . Llama a las directivas "elementos". Ampliamente expandido con servlets , JDBC , cookies HTTP y bucles.
  • Tutoriales:
    • Tutorial de Apache SSI
    • Guía en lenguaje sencillo sobre SSI
    • Desarrollador SSI, Apache Server Side Includes