Zwischenspeichern von Assets auf Github-Seiten (github.io)

16

Ist es möglich, Assets in Github-Seiten zwischenzuspeichern? Ich frage mich, ob ich in Betracht ziehen sollte, meine Webanwendung von meinem persönlichen Server auf Github-Seiten zu verschieben, und das Einzige, was mich bisher daran hindert, ist dies.

Adonis K. Kakoulidis
quelle

Antworten:

17

Der Server bei github.io macht auf jeden Fall Caching.

Ich habe dort eine Demo gestartet und konnte feststellen, dass der Server so konfiguriert ist Last-Modified, dass ein Client If-Modified-Sincedie Daten verwenden und vom Server abrufen kann, wenn sie seit dem letzten Abrufen nicht geändert wurden. Der Server legt auch fest CacheControl: max-age=600. Ich bin kein Cache-Spezialist, aber ich verstehe, dass ein Client möglicherweise Daten aus dem Cache abruft, ohne sie erneut zu validieren, solange die Daten nicht älter als 10 Minuten sind. Wenn es älter als 10 Minuten ist, muss es sich beim Server erkundigen (erneut validieren) und erhält möglicherweise eine Antwort 304.

Das Ergebnis ist, dass ein Client etwas, das sich nicht geändert hat, nicht erneut herunterlädt. Es dauert jedoch bis zu 10 Minuten, bis ein Client feststellt, dass eine Änderung stattgefunden hat.

All dies kann sich natürlich ändern, wenn die Sysadmins bei github.io beschließen, es zu ändern.

Louis
quelle
Caching 10 Minuten, wenn sehr kurz. Das von Jekyll erstellte CSS enthält auch einen Hash, der für immer zwischengespeichert werden sollte (da jede Änderung tatsächlich eine andere URL erfordert). Die eigentliche Frage ist, wie ich die Cache-Kontrolle auf Github-Seiten erweitern kann.
12.
@ rds Ich habe webapps.stackexchange.com/questions/119286/… gebeten, das zu behandeln
Mateusz Konieczny