Que es una CGI y Lenguajes del lado del servidor

Un CGI (Common Gateway Interface) es un programa que se ejecuta en tiempo real en un Web Server en respuesta a una solicitud de un Browser. Cuando esto sucede el Web Server ejecuta un proceso hijo que recibirá los datos que envía el usuario (en caso de que los haya), pone a disposición del mismo algunos datos en forma de variables de ambiente y captura la salida del programa para enviarlo como respuesta al Browser.

Ejemplo: Hola Mundo

Cómo tienes algunos conocimientos de programación, haremos juntos el ejemplo básico de todo curso, el programa “Hola Mundo”.
Como resultado obtendremos una página html que dirá solamente eso, “Hola Mundo”.
Al igual que en casi todo lenguaje de programación este programita es muy sencillo.

El código básico en lenguaje C es:

/* Programa Hola Mundo */

  int main(){
    printf("Content-Type: text/html\n\n");
    printf("<html>Hola Mundo</html>\n");
    return( 0 );
  }

Ejecutando este programa desde un browser se obtendrá una página conteniendo:

<html>Hola Mundo</html>

Sin embargo como puedes notar en el código hay una primera línea que debería imprimir:

Content-Type: text/html

La salida de esta primera línea de código es efectivamente recibida por el browser y le indica que tipo de información viene enseguida. Un CGI puede enviar código html, imágenes, sonido y en general cualquier tipo de archivo que se usa en Internet y es esta línea la que indica al browser como debe interpretar los datos que recibirá.

Servlet – Es una clase de java que se ejecuta en el contexto del servidor WEB (en el mismo proceso). Esta clase debe implementar un a determinada interfase y frecuentemente son mas eficiente ya que se ejecutan dentro del servidor.

ISAPI – Internet Server Application Programming Interface(ISAPI), es una DLL de Windows que implementa una interfaz que la convierte en ISAPI. Se pueden implementar en casi cualquier lenguaje que genere una DLL y frecuentemente son más eficientes ya que se ejecutan dentro del servidor.

PHP: Puede ejecutarse como un modulo de Apache o como una CGI. Se recomienda ejecutarla como un modulo de Apache para evitar problemas de eficiencia y seguridad.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *