Я создаю приложение ReactJS с использованием сборки create-реагировать на приложение и внедряю его в Amazon S3 и CloudFront.Развертывание достаточно просто;Когда я создаю новую версию, я могу синхронизировать каталог сборки с S3, нажать перезагрузить, и все работает хорошо.Index.html содержит ссылки на последнюю сборку с помощью уникальных хеш-ключей, поэтому я всегда получаю последние файлы.
Но как быть с активными пользователями, которые используют старую версию (версии) index.html
?Их браузеры будут ссылаться на «куски», которые больше не существуют.Как мне обновить мою последнюю сборку, не мешая этим пользователям?
Грубое решение может заключаться в том, чтобы сохранить файлы из более старых сборок, но тогда пользователь не будет автоматически обновляться до новой версии.И очистка старых файлов будет грязной.
В моей настройке CloudFront, когда активный пользователь запрашивает отсутствующий чанк, браузер будет перенаправлен на index.html
для ошибок 404/403.Возможно, обновления уже управляются автоматически, что приводит к перезагрузке файла index.html (и, следовательно, ссылок на новые файлы)?