Skip to main content

¿Qué son las secuencias de comandos del lado del servidor?

  • Adair

La secuencia de comandos del lado del servidor es un término utilizado principalmente con respecto a servir contenido personalizado a través del protocolo de transferencia de hipertexto (HTTP) en un servidor web al hacer que el servidor ejecute pequeños programas. Estos programas, generalmente escritos en un lenguaje de script, son ejecutados por el servidor cuando llega una solicitud del cliente. Dependiendo de los parámetros dados por el cliente en el momento de la solicitud, el script genera una página web para el cliente. Las páginas web creadas de esta manera a menudo se denominan páginas dinámicas. Esto contrasta con un script del lado del cliente que se envía desde el servidor al cliente solicitante y luego se ejecuta.

Las primeras técnicas de secuencias de comandos del lado del servidor surgieron para entregar contenido que sea exclusivo para el usuario que realiza la solicitud, así como para ahorrar tiempo al reducir la edición manual de los documentos de lenguaje de marcado de hipertexto (HTML). Los scripts del lado del servidor a menudo eran pequeños archivos ejecutables que contenían una serie de comandos para pasar al sistema operativo. El demonio web, el software que ejecuta el servidor web, usaría estos scripts de shell para ejecutar aún más un programa adicional que reside en la computadora host. Esta técnica general se definió en 1993 en el estándar de interfaz de puerta de enlace común (CGI) desarrollado por Internet Engineering Task Force (IETF). En la mayoría de los casos, estas primeras secuencias de comandos CGI se utilizaron para enviar respuestas de la base de datos desde el servidor al cliente solicitante.

A medida que se desarrollaron los lenguajes de secuencias de comandos interpretados, como Perl y PHP: Preprocesador de hipertexto (PHP), los métodos de secuencias de comandos del lado del servidor también evolucionaron. Los demonios HTTP se actualizaron para incluir extensiones de uso que permitieron llamar a estos diversos lenguajes de secuencias de comandos desde el propio demonio web, en lugar de pasarlos al sistema operativo en el host. Con esta adición, se pueden incluir fragmentos de lenguaje de script dentro del documento HTML. A medida que el servidor web lee un documento antes de enviarlo a través de la web, comprueba y ejecuta cualquiera de las secuencias de comandos dentro del documento.

Dado que el contenido invocado por las secuencias de comandos del lado del servidor reside en una base de datos, puede ser prácticamente cualquier cosa. El contenido, como descripciones de productos, variaciones de precios, entradas de weblog, imágenes e incluso formato, se almacena en la base de datos. También es posible anidar un fragmento de script del lado del servidor dentro de otro, donde el primer script toma ciertos datos de la base de datos, pero también llama a un segundo script que accede a datos secundarios. Esto es útil, por ejemplo, cuando se entrega contenido estándar bastante personalizado con contenido anidado adicional que puede ser sensible al tiempo o aún desconocido, como los comentarios en una entrada de weblog. El mantenimiento del sitio web, entonces, implica actualizar los datos en la base de datos, lo que luego afectará cada página del sitio web con el script incluido para llamar a esos datos.

Muchas de las técnicas de secuencias de comandos del lado del servidor se han desarrollado aún más en lo que se conoce como sistemas de gestión de contenido (CMS). PHP es probablemente el lenguaje más utilizado para este propósito, ejecutándose en el núcleo de muchas implementaciones de CMS. Aquí, un usuario que opera un sitio web que se ejecuta en un CMS editará sus documentos HTML para incluir las llamadas etiquetas. Las etiquetas son esencialmente señales para que el CMS le diga qué script incluir en el documento. El CMS se puede personalizar creando scripts adicionales y sus etiquetas asociadas.