“Conocimiento Redes>Ethernet

¿Cómo funciona la interfaz Common Gateway?

2015/4/14
La interfaz Common Gateway (CGI) es un protocolo estándar para que los servidores web ejecuten programas externos, típicamente scripts y devuelvan la salida al cliente web (generalmente un navegador web). Actúa como un puente entre el servidor web y otras aplicaciones. Aquí hay un desglose de cómo funciona:

1. Solicitud del cliente: Un usuario interactúa con una página web (por ejemplo, llena un formulario, hace clic en un enlace) que desencadena una solicitud al servidor web. Esta solicitud a menudo incluye parámetros o datos que el script debe procesar.

2. El servidor recibe solicitud: El servidor web recibe la solicitud e identifica que debe ser manejado por un script CGI. Esto generalmente se determina por la URL (por ejemplo, una extensión `.cgi`) o la configuración del servidor.

3. El servidor ejecuta script: El servidor invoca el script CGI. Esto implica crear un nuevo proceso para que se ejecute el script, asegurando el aislamiento de seguridad entre el script y el servidor en sí. Esto es crucial, ya que un script CGI comprometido podría afectar todo el servidor.

4. Solicitud de procesos de script: El script recibe la entrada del servidor, incluidos los parámetros de solicitud del cliente (como datos de formulario), variables de entorno (como la dirección IP del usuario) y la entrada estándar. Luego procesa esta información y genera salida.

5. El script envía respuesta: El script devuelve su salida al servidor web a través de la salida estándar (STDOUT) y el error estándar (STDERR). La salida generalmente incluye los encabezados HTTP (código de estado, tipo de contenido, etc.) y el contenido real que se mostrará en el navegador (por ejemplo, HTML, imágenes, texto).

6. El servidor envía respuesta al cliente: El servidor web recibe la salida del script, verifica los encabezados HTTP y envía la respuesta al navegador web del cliente. El navegador luego hace que el contenido recibido.

Aspectos y limitaciones clave:

* Seguridad: Debido a que los scripts CGI se ejecutan como procesos separados, las medidas de seguridad cuidadosas son vitales. Cualquier vulnerabilidad en un script CGI podría explotarse.

* Rendimiento: Crear un nuevo proceso para cada solicitud puede ser intensivo en recursos, especialmente bajo una carga pesada. Esto conduce a un rendimiento más lento en comparación con los enfoques más modernos.

* Independencia del lenguaje: Los scripts CGI se pueden escribir en cualquier lenguaje de programación que pueda producir la salida requerida. Esta flexibilidad es una ventaja significativa.

* Variables de entorno: El servidor web proporciona un conjunto de variables de entorno al script CGI, que ofrece información contextual importante.

* encabezados: El script es responsable de generar los encabezados HTTP correctos para indicar el tipo de contenido (por ejemplo, `Text/HTML`,` Image/JPEG`).

Alternativas modernas:

Si bien CGI sigue siendo funcional, se reemplaza en gran medida por tecnologías más eficientes y seguras como:

* fastcgi: Mejora el rendimiento manteniendo vivos los procesos de script, evitando la sobrecarga de la creación de procesos para cada solicitud.

* wsgi (python): Una interfaz estandarizada entre las aplicaciones web de Python y los servidores web.

* Alternativas CGI para otros idiomas: La mayoría de los marcos web modernos ofrecen mecanismos incorporados para manejar solicitudes de manera más eficiente que confiar directamente en CGI.

En resumen, CGI proporciona una forma fundamental para que los servidores web interactúen con programas externos, pero sufre desafíos de rendimiento y seguridad que han llevado a su disminución a favor de enfoques más modernos. Comprender CGI sigue siendo útil para comprender la historia y los principios subyacentes del desarrollo de aplicaciones web.

Ethernet
¿Qué es el conector de cable?
Cómo convertir Cable de Ethernet
¿Cuáles son algunos adaptadores Ethernet compatibles para mi E -Machine W3052 Informática
Requisitos de hardware para crear una red básica Ethernet
¿Cuál es el nombre del conector utilizado en un cable de red?
¿Qué son los cables Ethernet?
¿Por qué se disuelve IEEE 802.7?
¿Cómo puedo saber si mi ordenador tiene una tarjeta Ethernet
Conocimiento de la computadora © http://www.ordenador.online