Recibe alertas instantáneas si tu sitio web cae
SMS Llamada Correo
Empezar a monitorizar

¿Qué significa CGI-bin y para qué lo necesito?

Autor: Redacción HOSTTEST   | 26 mar 2020

CGI Bin Code erklärtLos tiempos en que las páginas web eran estáticas - es decir, que consistían en contenido programado de forma fija en el formato Hypertext Markup Language (HTML) - quedaron atrás hace tiempo. Hoy, programas generan el código HTML de forma dinámica a partir de múltiples fuentes como bases de datos, medios y otros archivos.

Para que un servidor web pueda comunicarse con otros programas, toda la información debe estar en un formato definido. El Common Gateway Interface (CGI) es uno de los estándares más populares y tiene como objetivo permitir el intercambio correcto y inequívoco de datos entre el servidor web y software externo.

¿Qué es CGI y cuál es su principio de funcionamiento?

Desde el punto de vista de los usuarios, CGI es principalmente una funcionalidad que ofrecen todos los servidores web usados habitualmente en Internet, como NGINX o Apache 2. Su tarea esencial consiste en convertir datos para el intercambio con programas externos a un formato universal y proporcionar métodos para dicho intercambio. De este modo, la interfaz garantiza que tanto el servidor web como las instancias externas conozcan la estructura de la información y puedan extraer el contenido original de forma clara e inequívoca y convertirlo para uso interno. En términos abstractos, el estándar podría describirse como un conjunto de reglas de comportamiento, lenguaje y gramática compartidos que conocen y usan todas las partes para evitar errores o malentendidos al traducir entre distintos programas.

¿Cómo funciona CGI?

En concreto, CGI consiste en un estándar abstracto para el intercambio de datos. Sin embargo, en el uso general del término a menudo se incluye una plataforma que el servidor web pone a disposición de software externo para estructurar la comunicación bidireccional mediante un procedimiento uniforme. En este sentido, la sigla en muchos contextos alude menos al estándar en sí que a un entorno de ejecución ofrecido por el servidor web y utilizable globalmente en el sistema operativo.

Este entorno incluye, entre otros:

  • Canales de datos accesibles desde ambas partes en el sistema operativo como interfaces comunes
  • Variables de entorno accesibles que contienen parámetros importantes, como ajustes relevantes de configuración y el estado actual del servidor web
  • Scripts que describen el manejo de datos, formatos o programas
  • Integración con el sistema operativo para, por ejemplo, gestionar procesos o conexiones
  • Transmisión interna de contenidos al servidor web

Una característica esencial y una de las ventajas decisivas de su popularidad es su función como estándar independiente. Esto significa concretamente que los programas CGI pueden estar escritos en cualquier lenguaje de programación disponible en el sistema y no están ligados a un sistema operativo específico como Windows o Linux.

 

Encuentre su propio servidor

Consiga ahora su propio Servidor Dedicado

Comparar servidores

 

¿Cómo se instala CGI?

En principio forma parte del servidor web y no es necesario instalar el soporte de forma manual. Solo en el caso de un Servidor Dedicado propio o un Servidor Privado Virtual (VPS) puede ser necesario cargar un módulo correspondiente en el servidor web o cambiar su configuración por defecto para permitir el uso de CGI. Salvo raras excepciones, forma parte de los servicios básicos en el alojamiento web de pago y, por lo general, también en el alojamiento web gratuito, y no requiere una configuración separada. Cabe señalar que las condiciones de uso pueden variar entre proveedores — por ejemplo, en cuanto al tamaño máximo o al consumo de recursos permitido por programas individuales.

 

¿Qué es CGI-bin y qué hay que tener en cuenta?

No todos los problemas al configurar CGI se deben a una configuración errónea; especialmente en usuarios particulares a veces provienen de información incorrecta o inexistente y de malentendidos. Una de las causas más comunes es CGI-bin. Este directorio suele ubicarse directamente en la carpeta raíz de un sitio web, en el primer nivel, y debe contener los programas y scripts que el servidor web va a usar para CGI. Si no se ha creado automáticamente, suele valer la pena intentar crearlo manualmente. También existen reglas estrictas para los archivos incluidos: deben pertenecer a un usuario o a un grupo que otorgue acceso al servidor web y deben tener el permiso especial para ejecutarse como programas. Si no se cumple alguna de las dos condiciones, la ejecución quedará impedida. Además, algunos proveedores configuran CGI de manera que todos los archivos deban tener la extensión .cgi

 

¿Para qué se necesita CGI en Internet?

Como se mencionó al principio, las páginas web modernas consisten en programas o scripts escritos a menudo en un lenguaje de programación como PHP, Perl o Python. Contienen instrucciones detalladas sobre de qué fuentes se compone el contenido de un documento HTML. Este procedimiento ofrece numerosas ventajas: permite gestionar textos o medios integrados de forma centralizada en una base de datos. Además, el software —por ejemplo, un sistema de gestión de contenidos (CMS), un gestor de foros o un sistema de tienda— genera en cada petición una respuesta individual, de modo que el contenido cambia automáticamente según criterios como usuarios registrados, invitados, clientes o el origen del visitante. CGI ofrece la posibilidad de ejecutar programas personalizados y utilizar cualquier lenguaje de programación independientemente de las características del servidor web. Esto es especialmente importante en algunos lenguajes como Perl o Python, porque, a diferencia de PHP, no son soportados de forma nativa ni mediante módulos por todos los servidores web.

¿Qué ventajas y desventajas tiene CGI?

Las principales ventajas residan sin duda en su uso universal y en su disponibilidad: como uno de los estándares más antiguos para la integración de páginas web dinámicas, forma parte del equipamiento básico de los servidores web en Internet.

Otras ventajas incluyen:

  • Configuración e instalación sencillas en redes locales
  • Integración fácil de bases de datos exóticas
  • Documentación extensa y buen soporte
  • Flexible y utilizable independientemente de factores externos
  • Fiabilidad y desarrollo profesional a largo plazo

Sin embargo, CGI también tiene desventajas específicas; algunos de los puntos críticos son:

  • Gestión de procesos costosa y alto consumo de recursos
  • Bajo rendimiento y procesamiento de datos lento
  • Riesgos potenciales de seguridad al ejecutar y dar acceso a programas externos
  • Riesgos potenciales de seguridad por una configuración incorrecta

 

Encuentra tu propio servidor

Consigue ahora tu propio Servidor Dedicado con acceso root

Ir a la comparativa de servidores

 

Foto: Pexels de pixabay.com

Escribe un comentario


Más proveedores de hosting


Más artículos interesantes