Não é realmente o melhor uso de um CDN ... a ideia é retirar os pedidos do seu servidor web. Tudo o que você precisa fazer é remover a largura de banda.
É melhor alterar o próprio código para tirar a solicitação das imagens do servidor da Web.
Alguns de vocês podem ter uma solução para isso, e eu preciso ouvir isso. Basicamente, você tem um site, muitas categorias (jogos, blogs, etc.).
A idéia seria usar o Amazon CDN para imagens, flv's, javascript js e css. Qual é a melhor maneira de implementar o Amazon CloudFront para que isso funcione?
Eu sincronizaria apenas as imagens, etc., mantendo a estrutura intacta? Eu tenho usado
RewriteEngine On
RewriteCond %{REQUEST_URI} .*jpg$|.*gif$|.*png$ [NC]
RewriteRule (.*) http://www.google.com/$1 [R]
para as imagens do servidor, mas também mantendo os caminhos relativos. Então
domain.com/images/something/smth.jpg
redirecionaria para
etc.cf.net/images/something/smth.jpg
A ideia é não fazer alterações no site. Eu não tenho certeza se não chutar s3fs diretamente para os diretórios de imagem, e ter tudo enviado para os respectivos pontos de montagem (a velocidade é rápida o suficiente?)
Não é realmente o melhor uso de um CDN ... a ideia é retirar os pedidos do seu servidor web. Tudo o que você precisa fazer é remover a largura de banda.
É melhor alterar o próprio código para tirar a solicitação das imagens do servidor da Web.
Você poderia usar algum buffer de saída e cache para processar todos os links e alterá-los para o CNAME do CF antes de serem enviados para o cliente. Em seguida, configure uma origem personalizada CF apontando para o seu domínio padrão.
Isso não exigirá outras alterações e encaminhará todo o tráfego de conteúdo estático para o CF, mas, na verdade, deixará o conteúdo original no mesmo servidor que está.
O exemplo acima também pode ser obtido no lado do cliente com alguma manipulação do DOM usando Javascript.