Você não hospeda simplesmente o site inteiro com a CDN, apenas o seu conteúdo .
Acabei de perceber que respondi a uma pergunta semelhante há algum tempo: O que o akamaihd.net faz?
Imagem de WikiMedia
Portanto, seu site faz referência http://akamai/myfile.ext
. Isso solicitará a myfile.ext
partir de akamai
. akamai
pode enviar um redirecionamento HTTP para o servidor de conteúdo real.
Agora, quando a última etapa for armazenada em cache, ótimo, todas as solicitações futuras serão direcionadas para o servidor de conteúdo mais próximo.
Como isso funciona?
Vamos assumir este site:
<html>
<body>
<img src="http://cdn/oliver.png" />
</body>
</html>
Solicito este site no meu próprio servidor da web. O .html
arquivo não está hospedado com cdn
. Nem é o DNS do meu servidor da web.
Pedido inicial
Então, meu navegador pegou o arquivo HTML e agora o analisa. Ele encontra a imagem referenciada e observa que está localizada em http://cdn/oliver.png
. Ele solicita esse arquivo.
Para fazer isso, ele precisa encontrar o endereço IP de cdn
. No nosso exemplo, esse endereço IP é 10.10.10.10
.
Com esse endereço IP, ele pode se conectar ao cdn
servidor e solicitar /oliver.png
.
Localização geográfica
Agora cdn
percebe, " esse cara é da Alemanha! ". Então, em vez de me enviar minha foto incrível que eu queria, ele me envia um redirecionamento HTTP dizendo:
/oliver.png não está aqui. Está em10.10.33.33/oliver.png
Então, meu navegador perguntará 10.10.33.33
(o que é mais próximo de mim) a imagem.
A sério?
Não estou dizendo que é assim que TODOS os CDNs funcionam, mas seria uma abordagem.
Você também pode implementar um daemon DNS que retorne resultados diferentes para uma pesquisa de nome, dependendo do local de quem enviou a consulta.
Mas duvido que isso seja feito na prática. Mas talvez eu não consiga imaginar como configurá-lo adequadamente. Veja a resposta do fluffy para saber como isso pode funcionar.
Quem dirige CDNs?
A maioria dos players globais possui sua própria rede de entrega de conteúdo (de certa forma, eu diria). Alguns provedores apenas transferem certos serviços para CDNs maiores (como a Microsoft faz com downloads do MSDN). E isso pode de alguma forma tocar no seu segundo assunto.
Considere isso, no MSDN a Microsoft oferece downloads de produtos. Esses downloads são fornecidos pela Akamai. Se você pode determinar o URL desse download, basta baixar o produto sem nunca entrar em contato com a Microsoft.
Isso é um problema de segurança? Na verdade, não, porque o que está sendo baixado ainda está protegido (por uma chave de produto).
Mas e quanto a outros dados?
Se seus dados são relevantes para a segurança, não são materiais da CDN. Se você não deseja que algo esteja disponível o mais amplamente possível, não o coloque em uma CDN.