Ce qui est cool avec nginx, c’est qu’il peut très facilement se compiler avec pleinnnn de modules additionnels.

Par exemple, pour le compiler avec le support du scripting en Lua et des URLs sécurisées jetables :

set -ex

cd /tmp

# on installe quelques dépendances, exemple sous Ubuntu
sudo apt-get install libgpgme11 libgpgme11-dev git-core

# on récupère le codes modules additionnels
# très souvent dispo sur github, c'est la fête !
git clone https://github.com/chaoslawful/lua-nginx-module
git clone https://github.com/WebServer-Tools/nginx-accesskey-module.git

# on dl les sources de nginx lui même
wget http://nginx.org/download/nginx-1.2.6.tar.gz

tar -xvf nginx-1.2.6.tar.gz

cd nginx-1.2.6/

# on compile nginx avec les modules, on inclut aussi le support de gzip
# vu que c'est une config web, et on lui dit de mettre l'exe
# dans /usr/local/nginx
./configure --prefix=/usr/local/nginx --with-http_gzip_static_module --add-module=/tmp/lua-nginx-module --add-module=/tmp/nginx-accesskey-module 

# et on lance la compilation
make
sudo make install

Et voilà, un nginx tout neuf. Bon derrière, il faut modifier le fichier /etc/init.d/nginx pour qu’il démarre votre nginx custo, et pas celui des packages.

Juste pour dire que c’est facile à faire. Y a pas 40 000 dépendances, on a des features très étonnantes disponibles dans les modules, et on peut faire des configs différentes pour chaque type de serveur.

Joie.