title: Server Side Includes
text: # Server Side Includes
  
  Server Side Includes (SSI) es un conjunto de directivas que se escriben en las páginas HTML y que se evalúan en el servidor web cuando se solicita la página HTML. SSI permite añadir contenido generado de forma dinámica a las páginas web, sin tener que programar toda la página mediante CGI, ASP, PHP o alguna tecnología similar.
  
  El SSI no se encuentra estandarizado por ningún organismo, así que cada desarrollador de software de servidores web es libre de incluir e interpretar estas directivas como mejor le parezca. Por tanto, lo más recomendable es consultar la documentación del servidor web para averiguar qué directivas reconoce y con qué sintaxis.
  
  ## Directivas
  
  ### Directivas más usuales
  
  | Directiva | Parámetros | Descripción | Ejemplo |
  | - | - | - | - |
  | include | file, direct o virtual | Esta es probablemente la directiva más empleada, ya que permite incluir en un documento el contenido de otro documento. El parámetro file o virtual indica el archivo (HTML page, text file, script, etc.) que se desea incluir. El parámetro file indica que la ruta del archivo a incluir es relativa a la ruta del documento actual; el parámetro virtual indica que la ruta del archivo a incluir es relativa a la raíz de la ruta del documento actual. | <!--#include virtual="header.html" --> o <!--#include file="footer.html" --> |
  | exec | cgi o cmd | Esta directiva ejecuta un programa, script o comando del sistema operativo. | <!--#exec cgi="/cgi-bin/foo.cgi" --> o <!--#exec cmd="ls -l" --> |
  | echo | var | Esta directiva muestra el contenido de la variable de entorno especificada, como por ejemplo HTTP_USER_AGENT, LAST_MODIFIED y HTTP_ACCEPT. | <!--#echo var="REMOTE_ADDR" --> |
  | config | timefmt, sizefmt o errmsg | Esta directiva configura el formato de visualización de las fechas, de las horas, del tamaño de los ficheros y de los mensajes de error (devueltos cuando una directiva SSI falla). | <!--#config timefmt="%y %m %d" --> o <!--#config sizefmt="bytes" --> o <!--#config errmsg="<b>El comando SSI ha fallado</b>" --> |
  | flastmod | file o virtual | Esta directiva muestra la fecha cuando el documento especificado fue modificado por última vez. | <!--#flastmod virtual="index.html" --> |
  | fsize | file o virtual | Esta directiva muestra el tamaño del documento. | <!--#fsize file="script.pl" --> |
  | printenv | | Esta directiva muestra una lista de todas las variables de entorno con sus respectivos valores. | <!--#printenv --> |
  
  ## Bibliografía
  
  * Sergio Luján Mora (2001). Programación de servidores web con CGI, SSI e IDC (libro completo gratuito en pdf) (1ª edición). Editorial Club Universitario.
  