Мы устанавливаем веб-приложение Java в EC2 под управлением Tomcat. Приложение использует папку для изображений пользователей (статический контент) -> www.example.com/PICTURES
Мы используем mod_jk, чтобы исключить Tomcat из обслуживания пути / PICTURES, поэтому его обслуживает Apache.
Мы планируем перенести / PICTURES на S3 и обслуживать их из нашего ведра.
В нашем коде мы используем короткие URL-адреса, поэтому, например, изображение пользователя определяется как: /PICTURES/1.jpg
Мы хотим перенаправлять каждый звонок из www.example.com/PICTURES/* в наше ведро -> example.com.s3-website-us-east-1.amazonaws.com/PICTURES
Мы искали лучшую стратегию, но, похоже, это не единое решение.
Насколько я знаю, мы должны использовать:
а) mod_rewrite: создание регулярного выражения для каждого статического контента, который мы хотели бы перенаправить в ур-ведро
б) прокси: работать как прокси для S3
Есть ли другое решение? Каковы плюсы и минусы?
Лучший способ сделать это - использовать другой домен для статического контента (например, static.example.com
), который указывает на S3 или CloudFront. Проксирование на S3 ничего вам не даст, а перенаправление будет добавлять дополнительную задержку к каждому запросу.
Камило создайте или отредактируйте файл .htaccess и добавьте строки:
RewriteEngine On
RewriteRule ^/PROFILES/(.+) http://pictures.example.com/PROFILES/$1 [R,L]