Compilation et configuration du module Apache mod_file_cache

Compilation et configuration du module Apache mod_file_cacheDepuis quelques temps, je cherche à utiliser le module mod_file_cache pour Apache, qui permet le chargement en mémoire de fichiers statiques. Comme il n’est pas disponible dans les dépôts de la Fedora, il m’a fallu le compiler.

Installation des paquets nécessaires

J’ai d’abord procédé à l’installation de l’environnement de compilation, à l’aide de la commande dnf.

dnf install gcc gcc-c++ kernel-devel httpd-devel redhat-rpm-config

Compilation du module

Afin de télécharger et de compiler le module mod_file_cache.c contenu dans le code source du logiciel Apache, j’ai utilisé les commandes suivantes :

wget http://archive.apache.org/dist/httpd/httpd-$(rpm -qa|grep httpd-2.4|cut -d '-' -f 2).tar.gz
tar zxf httpd-$(rpm -qa|grep httpd-2.4|cut -d '-' -f 2).tar.gz
cd httpd-$(rpm -qa|grep httpd-2.4|cut -d '-' -f 2)/modules/cache
apxs -cia mod_file_cache.c

Configuration Apache

A la compilation, la directive LoadModule associée au chargement du module mod_file_cache s’insère bêtement dans le fichier de configuration général du logiciel Apache /etc/httpd/conf/httpd.conf. J’ai préféré le mettre dans le répertoire /etc/httpd/conf.modules.d, où sont stockés les fichiers de configuration des modules.

cat /etc/httpd/conf/httpd.conf|grep file_cache > /etc/httpd/conf.modules.d/02-mod_file_cache.conf

N’oubliez pas de commenter la ligne LoadModule du module, incluse dans le fichier /etc/httpd/conf/httpd.conf.

J’ai ensuite constitué un fichier de configuration de tous les fichiers statiques utilisés par mon thème WordPress.

find /home/www/wp-content/themes/WP_Premium -type f -exec echo 'MMapFile {}' \;|grep -P "\.(jpe?g|gif|png|css|js)$" >> /etc/httpd/conf.d/99-mod_file_cache.conf

Inconvénient de ce module, vous êtes à chaque modification apportée au niveau de l’utilisation des directives CacheFile ou MMapFile contraint à redémarrer le serveur Apache.

systemctl restart httpd

Documentation

 

Apache / ,