Camilo cria ou edita seu arquivo .htaccess e adiciona as linhas:
RewriteEngine On
RewriteRule ^/PROFILES/(.+) http://pictures.example.com/PROFILES/$1 [R,L]
Estamos instalando um aplicativo da Web Java em um EC2 executando o Tomcat. O aplicativo usa uma pasta para fotos de usuários (conteúdo estático) - > www.example.com/PICTURES
Usamos mod_jk para excluir o Tomcat de servir o caminho / PICTURES, então é o Apache quem o serve.
Estamos planejando mudar / IMAGENS para S3 e atendê-las em nosso balde.
No nosso código, usamos URLs curtos, por exemplo, uma imagem do usuário é definida como: /PICTURES/1.jpg
Queremos redirecionar todas as chamadas de www.example.com/PICTURES / * para o nosso intervalo - > example.com.s3-website-us-east-1.amazonaws.com/PICTURES
Temos procurado a melhor estratégia, mas parece que não são uma solução unificada.
Até onde eu sei, devemos usar:
a) mod_rewrite: criando regex para todo conteúdo estático que gostaríamos de redirecionar para ur bucket
b) proxy: funciona como proxy para S3
Existe alguma outra solução? Quais são os prós e contras?
A melhor maneira de fazer isso é usar um domínio diferente para conteúdo estático (por exemplo, static.example.com
) que aponta para S3 ou CloudFront. Proxying para o S3 não vai comprar nada para você, e o redirecionamento adicionará latência extra a cada solicitação.