Est-il possible de mettre en cache des actifs dans des pages github? Je me demande si je devrais envisager de déplacer ma webapp de mon serveur personnel vers des pages github et la seule chose qui m'arrête jusqu'à présent est la suivante.
Le serveur de github.io fait certainement de la mise en cache.
J'ai une démo en cours d'exécution là-bas et j'ai pu déterminer que le serveur définit Last-Modified
ce qui permet à un client d'utiliser If-Modified-Since
et d'obtenir 304 du serveur si les données n'ont pas été modifiées depuis la dernière extraction. Le serveur définit également CacheControl: max-age=600
. Je ne suis pas un spécialiste du cache, mais je comprends que cela signifie qu'un client peut extraire du cache sans revalider tant que les données ne datent pas de plus de 10 minutes. S'il a plus de 10 minutes, il doit vérifier auprès du serveur (revalider) et peut obtenir une réponse 304.
Le résultat est qu'un client ne retéléchargera pas quelque chose qui n'a pas changé, mais cela peut prendre jusqu'à 10 minutes pour qu'un client trouve qu'un changement s'est produit.
Tout cela, bien sûr, peut changer chaque fois que les administrateurs système de github.io décident de le changer.