Servidores Web

Servidor HTTP Apache

Apache HTTP Server Project forma parte oficial de Slackware Linux por lo que ya se encontrará instalado.

Notas:

  • El lenguaje de programación PHP (PHP: Hypertext Preprocessor) también forma parte oficial de Slackware Linux por lo que ya se encontrará instalado y a su vez el Servidor HTTP Apache cuenta con el módulo mod_php para hacer uso de PHP.

  • El lenguaje de programación Python también forma parte oficial de Slackware Linux por lo que ya se encontrará instalado sin embargo será necesario hacer uso de Python Web Server Gateway Interface para el Servidor HTTP Apache. El proyecto SBo cuenta con network/mod_wsgi para compilar e integrar el soporte de Python al Servidor HTTP Apache.

  • El lenguaje de programación Ruby también forma parte oficial de Slackware Linux por lo que ya se encontrará instalado sin embargo será necesario hacer uso de Phusion Passenger para el Servidor HTTP Apache. El proyecto SBo cuenta con ruby/passenger para compilar e integrar el soporte de Ruby al Servidor HTTP Apache.

thttpd / sthttpd

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. Esto lo hace ideal para servir grandes volúmenes de información estática. - Wikipedia

Se hará uso de sthttpd el cual es una bifurcación de thttpd. sthttpd mantiene las mismas opciones de ejecución así como el nombre del ejecutable por lo que su uso es el mismo que thttpd.

Para compilar a sthttpd se procede de la siguiente manera:

  1. Crea el directorio $HOME/.local/src, accede a él y clona el repositorio de código de thttpd:

     alumno@servidor:~$ mkdir -p $HOME/.local/src
     alumno@servidor:~$ cd $HOME/.local/src
     alumno@servidor:~$ git clone https://github.com/blueness/sthttpd
     Cloning into 'sthttpd'...
     remote: Counting objects: 335, done.
     remote: Total 335 (delta 0), reused 0 (delta 0), pack-reused 335
     Receiving objects: 100% (335/335), 193.81 KiB | 144.00 KiB/s, done.
     Resolving deltas: 100% (188/188), done.
    
  2. Accede al directorio sthttpd y ejecuta el archivo autogen.sh:

     alumno@servidor:~/.local/src$ cd sthttpd
     alumno@servidor:~/.local/src/sthttpd$ ./autogen.sh
     configure.ac:8: installing './compile'
     configure.ac:5: installing './install-sh'
     configure.ac:5: installing './missing'
     extras/Makefile.am: installing './depcomp'
    
  3. Ejecuta el archivo ./configure con el parámetro --prefix=$HOME/.local:

     alumno@servidor:~/.local/src/sthttpd$ ./configure --prefix=$HOME/.local
     checking for a BSD-compatible install... /usr/bin/install -c
     checking whether build environment is sane... yes
     ...
     config.status: creating config.h
     config.status: executing depfiles commands
    
  4. Ejecuta el comando make para iniciar el proceso de compilación del código fuente de sthttpd:

     alumno@servidor:~/.local/src/sthttpd$ make 
     make  all-recursive
     make[1]: Entering directory '/home/alumno/.local/src/sthttpd'
     ...
     make[2]: Leaving directory '/home/alumno/.local/src/sthttpd'
     make[1]: Leaving directory '/home/alumno/.local/src/sthttpd
    
  5. Ejecuta el comando make con el parámetro install WEBDIR=$HOME/.local/var/www WEBGROUP=users para llevar a cabo la instalación de sthttpd en $HOME/.local:

     alumno@servidor:~/.local/src/sthttpd$ make install WEBDIR=$HOME/.local/var/www WEBGROUP=users
     Making install in src
     make[1]: Entering directory '/home/alumno/.local/src/sthttpd/src'
     ...
     make[2]: Leaving directory '/home/alumno/.local/src/sthttpd'
     make[1]: Leaving directory '/home/alumno/.local/src/sthttpd
    

Si todo ha salido con exito el comando thttpd se encuentra disponible en $HOME/.local/sbin:

alumno@servidor:~$ which thttpd
/home/alumno/.local/sbin/thttpd
alumno@servidor:~$ thttpd -V
sthttpd/2.27.0 03oct2014

darkhttpd

darkhttpd es un servidor web de código libre, similar a thttpd: simple, pequeño, portátil, rápido, y seguro.

  1. Crea el directorio $HOME/.local/src, accede a él y clona el repositorio de código de darkhttpd:

     alumno@servidor:~$ mkdir -p $HOME/.local/src
     alumno@servidor:~$ cd $HOME/.local/src
     alumno@servidor:~/.local/src$ git clone http://unix4lyfe.org/git/darkhttpd
     Cloning into 'darkhttpd'...
     Checking connectivity... done.
    
  2. Accede al directorio darkhttpd y ejecuta el comando make:

     alumno@servidor:~/.local/src$ cd darkhttpd
     alumno@servidor:~/.local/src/darkhttpd$ make
     cc -O `[ \`uname\` = "SunOS" ] && echo -lsocket -lnsl` darkhttpd.c -o darkhttpd
    
  3. Instala a darkhttpd copiando el archivo ejecutable darkhttpd en el directorio $HOME/.local/sbin:

     alumno@servidor:~/.local/src/darkhttpd$ cp darkhttpd $HOME/.local/sbin/
    

Si todo ha salido con exito el comando darkhttpd se encuentra disponible en $HOME/.local/sbin:

alumno@servidor:~$ which darkhttpd
/home/alumno/.local/sbin/darkhttpd
alumno@servidor:~$ darkhttpd --help | head -1
darkhttpd/1.12.from.git, copyright (c) 2003-2016 Emil Mikulic.