Pourquoi les secondes «29030400» sont-elles utilisées comme valeur commune pour l'expiration du cache?


10

J'ai remarqué que 29030400 est utilisé très souvent dans les directives Expires pour les fichiers statiques.

Google recommande de mettre en cache ce type de fichiers jusqu'à 1 an (1 mois au moins).

J'ai fait le calcul: 29030400 secondes = 336 jours

Cela représente environ 1 an moins 1 mois, donc cela tombe parfaitement dans l'intervalle recommandé, mais la question est pourquoi exactement 29030400? Et pas 31536000 secondes = 365 jours par exemple? Juste un copier / coller aveugle d'une valeur qui a été définie au hasard dans le temps? Ou a-t-il une autre explication?


2
Copiez / collez à l'aveugle!
Ali Hashemi

Réponses:


16

Cela pourrait venir de

60 * 60 * 24 * 7 * 4 * 12 = 29030400

où chaque mois comprend exactement 4 semaines.


1
Grande réponse m8 :-) beaucoup de gens oublient que 4 semaines ne sont pas un mois.
Simon Hayter

est logique, génial, accepté.
heytools

1

Unor a raison. C'est comme trouver 2419200 secondes en 4 semaines puis multiplier par 12 pour une année 29030400.

Cependant, comme vous le mentionnez, ce n'est pas très précis car de nombreux mois ont 31 jours, 5 semaines, etc.

Je fournis une réponse supplémentaire (même si la bonne réponse a été fournie) simplement pour fournir les secondes exactes pour une "année grégorienne" qui comprend également ces 5 mois, 28 jours en février, etc. Au cas où quelqu'un aurait besoin de ce nombre.

Il y a 31556952 secondes dans 1 année grégorienne. Si vous voulez une année exacte dans votre cache, c'est peut-être le nombre que vous cherchez à utiliser pour l'expiration de votre cache. :)


les expirations de cache ne doivent pas nécessairement être exactement quoi que ce soit. Vous pourriez arrondir à 30000000 secondes et cela ne ferait vraiment pas beaucoup de différence.
Stephen Ostermiller
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.