Site original : Sam & Max: Python, Django, Git et du cul
Je sers All That Counts avec nginx, et le fichier de config est super simple :
server { listen 80; server_name allthatcounts.net; error_log /var/log/nginx/error_allthatcounts.log; access_log /var/log/nginx/access_allthatcounts.log; location / { root /home/allthatcounts/www/; gzip on; gzip_http_version 1.0; gzip_vary on; gzip_comp_level 6; gzip_proxied any; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript; gzip_buffers 16 8k; gzip_disable ~@~\MSIE [1-6].(?!.*SV1)~@~]; expires modified +90d; } }
En gros c’est juste du log et servir les fichiers statiques compressés avec gzip. Il n’y a rien de plus à faire parce qu’il n’y a pas de backend. Simple. Efficace.
La couille c’est que c’est un copier / coller d’un autre projet que j’ai fais sans trop réfléchir, et quand j’ai mis en prod de nouvelles modifications sur le serveurs, mon Firefox me les affichait pas. Pourtant j’avais bien modifié le manifeste, donc il aurait du tout recharcher…
Sauf que, con de ma race, j’ai copié la ligne :
expires modified +90d;
Qui dit techniquement, met en cache tous les fichiers statiques pour 90 jours. Donc aussi le manifeste. Du coup, toutes les personnes qui ont visité le site ne verront aucune mise à jour pour un bon mois et demi.
Bravo Sam.