Servidor HTTP thttpd

thttpd (tiny/turbo/throttling HTTP server) es un servidor web de código libre disponible para la mayoría de las variantes de Unix. Se caracteriza por ser simple, pequeño, portátil, rápido, y seguro, ya que utiliza los requerimientos mínimos de un servidor HTTP. Escrito en el lenguaje de programación C. - Wikipedia

Información sobre thttpd en el S.O.

  • El archivo ejecutable de thttpd se llama thttpd:

     alumno@servidor:~$ which thttpd
     /usr/sbin/thttpd
    
  • Para obtener la versión de thttpd con la cual estamos trabajando:

     alumno@servidor:~$ thttpd -V
     thttpd/2.26 14aug2014
    
  • Para determinar si ya está en ejecución thttpd puedes usar el comando netstat -plutn como usuario root o bien ejecutar el comando ps aux | grep thttpd como usuario alumno.

Ejecutando a thttpd

  1. Crea un directorio donde mantendrás tus archivos, los cuales expondrás mediante el protocolo HTTP, y accede a él:

    alumno@servidor:~$ mkdir -p $HOME/www/thttpd01
    alumno@servidor:~$ cd $HOME/www/thttpd01
    

    En este caso /home/alumno/www/thttpd01 es el directorio ráiz para thttpd y está vacío.

  2. Ejecuta a thttpd, indicandole el directorio ráiz y el puerto TCP en el cual atenderá las conexiones:

    alumno@servidor:~/www/thttpd01$ thttpd -D -p 1234 -d $HOME/www/thttpd01 -nor -T UTF-8 -l -
    

    OBERVACIÓN: se hace uso de un guión al final del anterior comando.

    Observarás que la terminal se queda bloqueada mientras thttpd esté en ejecución.

  3. Verifica la ejecución de thttpd, en otra terminal:

    alumno@servidor:~$ netstat -plutn
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
     tcp        0      0 0.0.0.0:1234            0.0.0.0:*               LISTEN      1180/thttpd
    

    En este caso thttpd está atendiendo (LISTEN) conexiones en todas las interfaces de red (0.0.0.0) en el puerto TCP 1234.

Para realizar una petición a thttpd haremos uso de un navegador web, simplemente visita la dirección http://127.0.0.1:1234 o bien http://localhost:1234.

En las lecturas con respecto al protocolo HTTP encontrarás términos como GET, POST, Header o Cabecera, User-Agent, etc. Para que dichos términos tengan un sentido más práctico, mientras thttpd está en ejecución, en Firefox pulsa el juego de teclas Ctrl+Shift+Q, lo anterior te abrirá una ventana incrustada en Firefox, accede a thttpd y observa la información otorgada por Web Developer Tools en su pestaña Red o Network.