Catégorie 04SKILLS

Varnish Skill

Varnish/VCL — cache HTTP haute performance pour Drupal

Installation
Skill Claude — Globalmkdir -p ~/.claude/skills/varnish
Varnish (Ubuntu/Debian)apt install varnish # Config : /etc/varnish/default.vcl # Démarrage : systemctl start varnish
DDEV avec Varnishddev get ddev/ddev-varnish && ddev restart
SKL
À propos

Skill Claude pour configurer et optimiser Varnish Cache dans un contexte Drupal. Couvre le VCL (Varnish Configuration Language), la gestion du cache HTTP, les ESI (Edge Side Includes), la purge/invalidation via le module varnish_purge, et le debug des headers X-Cache.

Commandes
CommandeDescription
varnishlog -q "RespHeader:X-Cache"Observer les hits/miss du cache en temps réel
varnishstat -f MAIN.cache_hit -f MAIN.cache_missStatistiques hits vs miss du cache
varnishadm ban req.url ~ "^/node/42"Invalider les URLs matchant un regex
varnishadm vcl.load prod default.vclCharger une nouvelle config VCL sans downtime
drush varnish-purge-allPurge totale via le module Drupal varnish_purge
Exemples
Configurer la purge lors de la mise à jour d'un nœudCODE
# Dans settings.php, activer le header Cache-Tags
$config['system.performance']['cache']['page']['max_age'] = 3600;

# Module varnish_purge — configurer un purger HTTP
# URL du purger : http://varnish:6081
# Method : BAN
# Header: X-Invalidate-Tag: [invalidation:expression]

# Test : modifier un nœud et observer les logs Varnish
varnishlog -q "ReqMethod:BAN"
VCL pour Drupal — version complète recommandéeCODE
"Génère un fichier default.vcl complet pour Drupal 10 qui :
- Gère les cookies de session Drupal (SESS*)
- Passe les requêtes POST/PUT/DELETE sans cache
- Ignore les cookies de tracking (GA, GTM, Hotjar)
- Configure le grace mode à 6h
- Ajoute les headers X-Cache: HIT/MISS pour le debug
- Permet les BANs HTTP depuis Drupal (varnish_purge)
- Exclut /admin/* et /user/* du cache"