Buforowanie zasobów na stronach Github (github.io)

16

Czy można buforować zasoby na stronach github? Zastanawiam się, czy powinienem rozważyć przeniesienie mojej aplikacji internetowej z mojego osobistego serwera na strony github i jedyne, co mnie do tej pory powstrzymywało, to to.

Adonis K. Kakoulidis
źródło

Odpowiedzi:

17

Serwer na github.io z pewnością buforuje.

Mam uruchomioną wersję demonstracyjną i byłem w stanie ustalić, że zestawy serwerów Last-Modifiedpozwalają klientowi korzystać If-Modified-Sincei pobierać 304 z serwera, jeśli dane nie zostały zmodyfikowane od czasu ostatniego pobrania. Serwer również ustawia CacheControl: max-age=600. Nie jestem specjalistą od pamięci podręcznej, ale rozumiem, że oznacza to, że klient może pobierać dane z pamięci podręcznej bez ponownego sprawdzania poprawności, o ile dane nie mają więcej niż 10 minut. Jeśli ma więcej niż 10 minut, musi skontaktować się z serwerem (ponownie dokonać walidacji) i może uzyskać odpowiedź 304.

Rezultatem jest to, że klient nie pobierze ponownie czegoś, co nie uległo zmianie, ale może minąć do 10 minut, zanim klient wykryje, że nastąpiła zmiana.

Wszystko to oczywiście może się zmienić, ilekroć sysadmins z github.io zdecydują się to zmienić.

Louis
źródło
Buforowanie 10 minut, jeśli jest bardzo krótkie. CSS zbudowany przez Jekyll zawiera również skrót, więc powinien być przechowywany w pamięci podręcznej na zawsze (ponieważ każda zmiana będzie wymagała innego adresu URL). Prawdziwe pytanie brzmi: jak mogę rozszerzyć kontrolę pamięci podręcznej na stronach Github?
rds
@rds Poprosiłem webapps.stackexchange.com/questions/119286/... o pokrycie tego
Mateusz Konieczny