Outre les mastodonte Apache ou Nginx, il existe une floppée de serveur web moins connus, avec moins de fonctionnalités, avec un suivis sécurité plus anecdotique, mais léger et fonctionnel pour des sites web à vocation personnel. On peut évoquer lighttpd en passant. Mais ici il sera question d’une application encore plus petite : mini_httpd.
La famille des serveurs web de la forge acme
La forge acme propose pas moins de 3 serveurs http différents : micro_httpd, t(iny)httpd et micro_httpd. Ils sont cités du plus minimaliste au plus complet. micro_httpd est une application répondant uniquement à travers inetd des pages web statiques sans chiffrement. thttpd fonctionne comme service autonome, avec possibilité de génération de pages web dynamique via CGI ; il ne dispose toujours pas de transports SSL. mini_httpd est le plus évolué : service autonome, service web dynamique via CGI, support de vhost, et transport SSL. Cet article est consacré à la configuration de ce dernier pour la mise en place d’un site internet personnel.
Installation sous FreeBSD 13.3
mini_httpd semble être trop désuet pour être proposé dans le système de package de distribution Linux. On le trouve encore en 2024 dans les ports et packages de FreeBSD.
Comme d’habitude sous FreeBSD, deux méthodes d’installation en alternative. Par pkg d’abord :
# pkg install www/mini_httpd
Par les ports ensuite :
# cd /usr/ports/www/mini_httpd
# make config
Un seul paramètre est disponible : la présence ou pas des fichiers d’exemples. Pas utile pour nous. On termine l’installation.
# make install
Configuration
Sous FreeBSD, les fichiers de configuration des paquets tiers sont situés dans /usr/local/etc. On s’y rend.
# cd /usr/local/etc
On lance un éditeur :
vi mini_httpd.cnf
(ou vim, ou nano, etc.)
port=80
user=www
dir=/usr/local/www/fr3d0.xyz
nochroot
logfile=/var/log/mini_httpd.log
On lance une première fois le serveur pour vérifier son fonctionnement.
# service mini_httpd onestart
Puis on automatise son lancement au démarrage.
# service mini_httpd enable