Я создаю сайт, используя Ruby on Rails. Для загрузки изображений я использую Active Storage и Amazon S3. Здесь все хорошо. Пользователи могут загружать изображения и изображения для просмотра на веб-сайте (изображения являются общедоступными).
Теперь в производстве URL-адрес для изображений: https://example.com/rails/active_storage/representations/1ej21h...
Которые возвращают 302 в ведро S3:
https://my -bucket.amazonaws.com / варианты / 9jdh2 ...
Я не большой поклонник:
- две поездки туда и обратно, чтобы получить изображение;
- отправка запросов на изображения на сервер Rails;
- чувство вялости на этих изображениях.
И я бы предпочел использовать Cloudfront для обслуживания этих изображений.
Я искал в Rails Guides, в Google и StackOverflow, но пока не нашел правильного ответа.
Есть ли какое-либо решение для использования Cloudfront с Active Storage?
Edit:
Больше контекста: каждое изображение будет загружаться 1000 раз в минуту, по крайней мере, при нормальном движении и из разных стран. Я не хочу подвергать сервер этому давлению (он обрабатывает другие запросы). И я хочу, чтобы пользователи загружали эти изображения как можно быстрее. Следовательно Cloudfront как CDN для этих изображений (общедоступные изображения, не нужно получать подписанный URL).