Servidor HTTP darkhttpd
Darkhttpd is a simple, fast HTTP 1.1 web server, written in C (efficient and portable) for static content. It has an small memory footprint based on a event loop, single threaded. It supports IPv6, HTTP GET-HEAD requests and Keep-Alive connections. - darkhttpd
Información sobre darkhttpd en el S.O.
El archivo ejecutable de darkhttpd se llama
darkhttpd
:alumno@servidor:~$ which darkhttpd /home/alumno/.local/sbin/darkhttpd
Para obtener la versión de darkhttpd con la cual estamos trabajando:
alumno@servidor:~$ darkhttpd --help | head -1 darkhttpd/1.12.from.git, copyright (c) 2003-2016 Emil Mikulic.
Para determinar si ya está en ejecución darkhttpd puedes usar el comando
netstat -plutn
como usuario root o bien ejecutar el comandops aux | grep darkhttpd
como usuario alumno.
Ejecutando a darkhttpd
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/darkhttpd01 alumno@servidor:~$ cd $HOME/www/darkhttpd01
En este caso
/home/alumno/www/darkhttpd01
es el directorio ráiz para darkhttpd y está vacío.Ejecuta a darkhttpd, indicandole el directorio ráiz y el puerto TCP en el cual atenderá las conexiones:
alumno@servidor:~/www/darkhttpd01$ darkhttpd $HOME/www/darkhttpd01 --port 1234
Observarás que la terminal se queda bloqueada mientras darkhttpd esté en ejecución.
Verifica la ejecución de darkhttpd, 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/darkhttpd
En este caso darkhttpd está atendiendo (LISTEN) conexiones en todas las interfaces de red (0.0.0.0) en el puerto TCP 1234.
Para realizar una petición al darkhttpd 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 darkhttpd 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 darkhttpd y observa la información otorgada por Web Developer Tools en su pestaña Red o Network.