inicio anterior siguiente

Noticias, ofertas, guías de compra de Notebooks
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:

bajar

  /* Programa Hola Mundo */
  /* Autor: Juan Manuel Doren */
  /* Compilar en unix con: gcc -i hola.c -o hola.cgi */

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

    return( 0 );

  }
  

ejecutar

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á.

Adicionalmente el browser recibe otra información como el largo de los datos o cookies que se desean grabar, todo esto en forma de un encabezado que no será visible. El final de este encabezado está marcado por dos retornos de marcas de fin de línea ("\n\n") siguiendole inmediatamente los datos.

Un documento html típico recibido por un browser puede verse así:

HTTP/1.0 200 OK
Date: Fri, 08 May 1998 19:18:41 GMT
Server: Apache/1.2.5 mod_perl/1.07
Last-Modified: Tue, 07 Apr 1998 19:22:57 GMT
ETag: "7807b84a-1d52-352a7d11"
Content-Length: 7506
Accept-Ranges: bytes
Content-Type: text/html
X-Pad: avoid browser bug

<HTML>
  [ ... etc. ]

Por el momento, al construir un cgi solo será necesario preocuparse de la línea destacada en rojo ya que las demás son colocadas por el browser indicando entre otras cosas que protocolo usa, la fecha del documento (así sabe el browser si bajarlo o usar alguna versión guardada en el caché), el largo de los datos (así el browser puede indicarnos el porcentaje que ya ha bajado) y otra información que no nos interesa de momento.

Algunos de los encabezados más frecuentes son:

EncabezadoSignificado (MIME TYPE)
text/htmlDocumento html
Location: urlDesvia al visitante a otra dirección
image/gifImágen del tipo: .gif
text/plainDocumento de Texto
image/jpegImágen del tipo: .jpeg .jpg .jpe
audio/x-wavSonido .wav
audio/midiSonido .mid
video/mpegVideo .mpeg .mpg .mpe
video/quicktimeVideo Quicktime .qt .mov
video/x-msvideoVideo .avi
video/x-sgi-movieVideo .movie
audio/basicSonido .au .snd
application/zipArchivo .zip
application/mswordArchivo Word .doc
application/msexcelPlanilla Excel .xls
audio/x-pn-realaudio(Real)Audio .ram .ra

Ejercicios

i) Construir un CGI que dependiendo de la hora del servidor salude diciendo: "Buenas tardes", "Buenas noches" o "Buenos días" mundo.
ii) Construir un cgi que muestre según la fecha del servidor un fondo de distinto color usando el tag body).


inicio anterior siguiente