Cómo los scripts CGI-Bin ejecutan código en servidores web

10

La interfaz de puerta de enlace común es un estándar antiguo, pero todavía ejecuta la web entre bastidores. La mayoría de los servidores siguen una regla rígida para este mecanismo. Creas una carpeta específica. El nombre siempre es cgi-bin. Este no es sólo el nombre de una carpeta. Es una orden.

Cuando ve este directorio en el árbol raíz del servidor, el software comprende un límite estricto. Los archivos internos no solo se leen. Son ejecutados.

Piense en lo que sucede cuando un navegador solicita un archivo en esta zona. El servidor no envía el código sin formato a su pantalla. Ejecuta el programa. Luego toma todo lo que ese programa escupe y te lo envía eso. El resultado es la página que ves.

El código ejecutable suele ser una de dos cosas. Un binario compilado. Algo hecho por un compilador de C. O un script PERL. PERL es enorme en este espacio. Es popular para secuencias de comandos CGI porque maneja el procesamiento de texto con mucha facilidad.

Imagínese esto. Escribe una URL en la barra de su navegador.

https://www.howstuffworks.com/cgi-bin/search.pl

El servidor ve esa ruta. Reconoce que search.pl se encuentra dentro de la carpeta cgi-bin. Entonces ejecuta el script PERL. El guión se ejecuta. Genera salida. Esa salida regresa a su navegador. Nunca ves el código. Sólo ves el resultado.

¿Puedes construir el tuyo propio? Sí. Pero necesitas dos cosas. Primero, necesitas conocer un lenguaje como C o PERL. En segundo lugar, necesitas acceso.

Si paga por un servicio de alojamiento web, probablemente ya tenga esta capacidad. Consulte con su proveedor. Por lo general, habilitan las secuencias de comandos CGI de forma predeterminada.

¿Qué pasa si no pagas por el hosting? Puede instalar un servidor web en su propia máquina. Es más complicado. Lucharás con los archivos de configuración. Pero aprenderá mucho más rápido que simplemente leyendo sobre ello.

El servidor ejecuta el programa en cgi-bin y envía la salida al navegador. Esta separación oculta el código al usuario.

Esta configuración es importante porque permite contenido dinámico. El HTML estático es aburrido. No cambia. Los scripts CGI permiten que un servidor genere páginas sobre la marcha. Pides datos. El guión lo recupera. El servidor lo envía.

La mayoría de las aplicaciones modernas ahora utilizan otros métodos. API. Marcos. Pero CGI es la base. Enseñó a la web cómo hablar con código.

No es necesario dominar PERL para comprenderlo. Solo debes saber que cuando accedes a esa URL, algo se ejecuta en segundo plano. El directorio cgi-bin es el desencadenante. El resultado es el regalo.

¿Por qué algunos servidores todavía dependen de esto? Legado. Estabilidad. Y porque funciona. Simple. Directo.

Si desea probarlo, busque un host que lo admita. Escribe un guión sencillo. Vea qué sucede cuando el navegador lo solicita. El bucle se completa. La página se carga. La magia es sólo matemática y lógica.