Кэширование ресурсов на страницах Github (github.io)

16

Можно ли кешировать ресурсы на страницах github? Мне интересно, стоит ли мне переместить мое веб-приложение с личного сервера на страницы github, и единственное, что меня до сих пор останавливает, - это следующее.

Адонис К. Какулидис
источник

Ответы:

17

Сервер на github.io, конечно, делает кеширование.

Я запустил демонстрацию и смог определить, что сервер устанавливает, Last-Modifiedчто позволяет клиенту использовать If-Modified-Sinceи получать 304 с сервера, если данные не были изменены с момента последней выборки. Сервер также устанавливает CacheControl: max-age=600. Я не специалист по кешу, но я понимаю, что это означает, что клиент может извлекать данные из кеша без повторной проверки, если данные не старше 10 минут. Если ему более 10 минут, он должен проверить с сервером (подтвердить) и может получить ответ 304.

В результате клиент не будет повторно загружать то, что не изменилось, но клиенту может потребоваться до 10 минут, чтобы обнаружить, что изменение произошло.

Все это, конечно, может измениться, когда системные администраторы на github.io решат это изменить.

Луис
источник
Кеширование 10 минут, если очень короткое. CSS, созданный Jekyll, также содержит хеш, поэтому он должен храниться в кэше навсегда (поскольку любое изменение фактически запрашивает другой URL). Реальный вопрос в том, как расширить Cache-Control на страницах Github?
Rds
@rds Я попросил webapps.stackexchange.com/questions/119286/… чтобы покрыть это
Mateusz Konieczny