Nginx compte parmi les serveurs web les plus utilisés pour sa rapidité et sa légèreté.
Pour gagner encore en performances, activez la mise en cache : elle réduit le temps de réponse et la charge serveur.
Ce guide détaille comment configurer la mise en cache avec Nginx.
Plan de l'article
- Activer le cache dans Nginx
- Configurer un cache disque
- Gérer l'expiration et la validation du cache
- Purger et surveiller le cache
- Conclusion
Activer le cache dans Nginx
Dans la configuration principale (/etc/nginx/nginx.conf) :
http {
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=STATIC:10m inactive=24h max_size=1g;
include /etc/nginx/conf.d/*.conf;
}
Configurer un cache disque
Dans un VirtualHost :
server {
listen 80;
server_name exemple.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_cache STATIC;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
add_header X-Cache-Status $upstream_cache_status;
}
}
proxy_cache_validdéfinit la durée de mise en cache.- L'en-tête
X-Cache-Statusindique si la réponse vient du cache.
Gérer l'expiration et la validation du cache
Définir des règles spécifiques :
location ~* \.(jpg|jpeg|png|gif|css|js|ico|webp)$ {
expires 30d;
access_log off;
}
👉 Les fichiers statiques seront servis directement depuis le cache disque.
Purger et surveiller le cache
Pour purger le cache :
sudo rm -rf /var/cache/nginx/*
sudo systemctl reload nginx
Pour surveiller :
tail -f /var/log/nginx/access.log
Vérifier la présence de X-Cache-Status: HIT.
Conclusion
Une mise en cache de Nginx bien configurée accélère vos sites web et décharge vos serveurs applicatifs. L'utilisateur final perçoit la différence sur le temps de réponse.
Un réglage simple, à fort impact, pour tout administrateur système.
Pour aller plus loin, consultez HTTP/2 et Brotli et notre guide sur Web Vitals pour le SEO.


