O Alibaba Cloud CDN acelera o Object Storage Service (OSS) por meio de um cache global e distribuído. Ao entregar recursos estáticos do OSS (como imagens, áudios, vídeos e documentos) para usuários em todo o mundo, você pode usar o Alibaba Cloud CDN para melhorar significativamente a velocidade de acesso, reduzir a latência e diminuir os custos de tráfego.
Como funciona
O CDN acelera o acesso ao OSS com uma arquitetura de cache distribuído. Essa arquitetura armazena em cache o conteúdo estático de um bucket do OSS (a origem) em nós de borda do CDN distribuídos globalmente. A entrega do conteúdo a partir do nó mais próximo do usuário minimiza a latência.
Roteamento de requisições: Quando um usuário solicita um recurso pela primeira vez, a resolução inteligente de DNS direciona a requisição para o nó de CDN mais próximo e com o melhor desempenho de rede.
Busca na origem: Se o nó de CDN detectar que o recurso não está em seu cache local, ele envia uma requisição de busca para a origem do OSS.
Armazenamento em cache: Depois que o OSS retorna o conteúdo, o nó de CDN armazena o recurso em cache de acordo com regras predefinidas e o entrega ao usuário.
Acerto de cache (Cache hit): Nas requisições subsequentes para o mesmo recurso, o nó de CDN entrega o conteúdo diretamente do seu cache, o que elimina a necessidade de uma nova requisição à origem. Esse processo encurta o caminho de acesso, reduz a latência de rede e diminui a carga na origem, acelerando o acesso.
Início rápido
Pré-requisitos
Você possui um domínio registrado ou pode comprar um novo domínio. Domínios não registrados no Alibaba Cloud também são suportados.
Se a sua região de aceleração incluir a China continental, seu domínio deve ter um registro ICP.
Etapa 1: Adicione um domínio e configure uma origem
Acesse o console do CDN e clique em Add Domain Name.
Selecione uma Region e um Business Type e, em seguida, insira o Domain Name to Accelerate. O domínio acelerado pode ser um domínio raiz (como
example.com) ou um subdomínio personalizado (comooss.example.com). Recomendamos o uso de um subdomínio para facilitar o gerenciamento e a escalabilidade.Clique em Add Origin. Para Origin Information, selecione OSS Domain, escolha o nome de domínio do seu bucket de destino e clique em OK para adicionar o servidor de origem.
Clique em Next para concluir a adição do domínio acelerado.
Após adicionar o domínio acelerado, você pode seguir o assistente Recommended Configuration para definir configurações básicas, como o tempo de expiração do cache, requisições de intervalo (range requests) para a origem e certificados HTTPS. Alternativamente, clique em Skip, Configure Later para prosseguir diretamente para a configuração de CNAME.
Esta etapa define o Origin Server Type como OSS Domain, portanto, o Origin Host do CDN assume como padrão o domínio do bucket de origem, que o OSS consegue identificar. Se você adicionar a origem do OSS como um tipo origin domain ou IP, o Origin Host assume como padrão o CDN Domain, e você deve garantir que o Origin Host corresponda à vinculação de domínio do OSS; caso contrário, a busca na origem falhará. Para mais informações, consulte Origin security: Configure SNI and host em Prevenção de riscos.
Etapa 2: Configure um registro CNAME
Adicione um registro CNAME nas suas configurações de DNS para mapear o domínio acelerado ao endereço CNAME atribuído pelo CDN. Isso roteia as requisições dos usuários para os nós de borda do CDN. O exemplo a seguir mostra como configurar um registro CNAME no console do Alibaba Cloud DNS.
Acesse o console do DNS. Na coluna Actions do seu domínio de destino, clique em Settings.
-
Clique em Add Record e insira as seguintes informações. Você pode manter os valores padrão para as outras configurações.
Parâmetro
Descrição
Record Type
Selecione CNAME.
Hostname
Insira
@para o domínio raiz ou o prefixo para o subdomínio (comooss), com base no seu domínio acelerado.Record Value
Insira o valor CNAME fornecido na página do assistente ou na página de lista de domínios acelerados, como
oss.example.com.w.cdngslb.com. Clique em OK e siga as instruções na tela para adicionar o registro.
O tempo de propagação do registro DNS depende da sua configuração de Time-to-Live (TTL). A propagação completa pode levar de alguns minutos a várias horas. O domínio pode ficar inacessível imediatamente após a configuração. Aguarde a propagação do registro DNS ou tente limpar o cache DNS local.
Etapa 3: Configure o back-to-origin para bucket privado
Por padrão, os novos buckets são privados. Para permitir que o CDN acesse um bucket privado, ative o recurso de back-to-origin para bucket privado. Se o seu bucket tiver permissões de leitura pública, o CDN poderá acessá-lo diretamente, e você não precisará ativar esse recurso.
No console do CDN, clique no domínio de destino. No painel de navegação à esquerda, clique em Origin Fetch.
Na seção Alibaba Cloud OSS Private Bucket Access, ative o recurso. Para Origin type, selecione Same-account back-to-origin.
Ativar o back-to-origin para bucket privado autoriza o CDN a acessar seu bucket privado e adiciona automaticamente informações de assinatura às requisições de back-to-origin. Portanto, os clientes devem usar uma URL sem parâmetros de assinatura, como http://example.com/example.jpg. Se a URL incluir parâmetros de assinatura como Expires ou Signature, a autenticação do OSS falhará e um erro 403 será retornado.
Etapa 4: Verifique a aceleração
Após concluir a configuração, execute um teste de comparação para verificar a melhoria de desempenho do domínio acelerado.
-
Obtenha as URLs de acesso ao arquivo:
Tipo de URL
Método
URL de acesso padrão do OSS
Acesse a Bucket List e selecione o bucket de destino. Para o arquivo de destino, clique em View Details na coluna Actions e, em seguida, clique em Copy Object URL.
URL de acesso acelerado por CDN
Construa a URL usando o domínio acelerado e o nome do arquivo, como
http://example.com/example.jpg(sem parâmetros de assinatura). -
Verifique a aceleração: Use uma ferramenta ou plataforma de teste de velocidade, como a Ferramenta de Detecção Descartável do CloudMonitor, para comparar os tempos de carregamento das duas URLs para o mesmo arquivo.
NotaO efeito de aceleração pode não ser óbvio durante o primeiro teste, pois o nó de CDN precisa buscar o recurso no servidor de origem. Aguarde o recurso ser armazenado em cache no nó de CDN e teste novamente.
-
Verifique o status de acerto de cache: Use as ferramentas de desenvolvedor do seu navegador (F12) para inspecionar o valor do campo
X-Cacheno cabeçalho de resposta:Valor
Descrição
Começa com
HITIndica um acerto de cache. A requisição foi atendida a partir do cache do CDN e o acesso foi acelerado.
Começa com
MISSIndica uma falha de cache. A requisição não foi atendida pelo cache do CDN e foi encaminhada ao servidor de origem do OSS para recuperar o recurso.
Casos de uso
Aceleração de vídeo e arquivos grandes
Garantir uma boa experiência do usuário para vídeo sob demanda (VOD) e downloads de arquivos grandes requer configurações especiais.
Configurações necessárias
Ative as requisições Range GET: Enable Range-based origin fetch para o seu nome de domínio acelerado. Isso permite que os nós de borda do CDN solicitem arquivos grandes em partes, o que suporta a busca em vídeos e downloads retomáveis.
Configure um TTL de cache adequado: Arquivos de vídeo geralmente são atualizados com pouca frequência. Defina um TTL de cache longo, como 30 dias ou mais, para reduzir as buscas frequentes na origem.
Use o prefetch de recursos: Antes de lançar um vídeo, use o recurso Refresh and Prefetch Resources do CDN para distribuir o vídeo para os nós de borda.
Recomendações de taxa de bits de vídeo
A velocidade de carregamento do vídeo está intimamente relacionada à taxa de bits. Se os usuários relataram que a reprodução do vídeo está travando ou picotando, verifique a taxa de bits do vídeo:
|
Faixa de taxa de bits |
Caso de uso |
Descrição |
|
500–2.000 kbps |
Dispositivos móveis, definição padrão |
Faixa recomendada para um carregamento fluido. |
|
2.000–4.000 kbps |
PCs, alta definição |
Requer largura de banda suficiente do usuário. |
|
>6.000 kbps |
Ultra-alta definição (UHD)/4K |
Pode causar carregamento lento. Forneça várias versões com diferentes taxas de bits. |
Se a taxa de bits do vídeo for muito alta (maior que 10 Mbps), o carregamento pode ser lento mesmo com a aceleração do CDN. Use o service video transcoding para reduzir a taxa de bits ou fornecer streaming com taxa de bits adaptativa.
Configuração de origem com múltiplos buckets
Se a sua arquitetura usa vários buckets do OSS para diferentes tipos de recursos, use um dos seguintes métodos para configurar a busca na origem com múltiplas fontes.
Método 1: Arquitetura de subdomínios separados
Atribua subdomínios separados e semânticos aos buckets para diferentes recursos ou tipos de recursos e, em seguida, configure a aceleração do CDN para cada subdomínio individualmente.
|
Tipo de recurso |
Exemplo de subdomínio |
Configuração recomendada |
|
Recursos de imagem |
|
Configure uma política de cache de longo prazo para melhorar a velocidade de acesso. |
|
Recursos de áudio e vídeo |
|
Ative a busca na origem baseada em Range para suportar downloads retomáveis. |
|
Documentos sensíveis |
|
Ative independentemente a autenticação de URL para garantir a segurança. |
O uso de uma arquitetura de subdomínios separados oferece os seguintes benefícios:
Subdomínios semânticos são fáceis de identificar e manter pelas equipes de desenvolvimento.
O tráfego é distribuído no nível de DNS, o que evita os limites de conexões simultâneas de um único domínio.
Cada bucket pode ter suas próprias políticas de cache, configurações de segurança e alertas de monitoramento.
O monitoramento independente ajuda a identificar gargalos de desempenho e tráfego anormal.
Método 2: Domínio unificado com roteamento baseado em caminho
Para fornecer um ponto de acesso unificado para buckets de diferentes services, configure um único nome de domínio acelerado e use o rules engine para rotear requisições para buckets específicos com base no caminho da requisição. Este exemplo mostra como configurar o nome de domínio acelerado oss.example.com para buscar conteúdo de dois buckets: cdn-bucket1 e cdn-bucket2.
Adicione as informações de origem: Adicione
cdn-bucket1ecdn-bucket2às Origin Information do nome de domínio acelerado e, em seguida, configure CNAME resolution para o domínio.-
Adicione regras de caminho: Para o nome de domínio acelerado, acesse e crie duas regras de caminho de URL que correspondam a
http://oss.example.com/bucket1/*ehttp://oss.example.com/bucket2/*, respectivamente.Nome da regra
Tipo
Operador de correspondência
Valor de correspondência
bucket1 (personalizável)
URI
Contains any of
/bucket1/*bucket2 (personalizável)
URI
Contains any of
/bucket2/* -
Adicione origens condicionais: Em Basics, use a opção Add Conditional Origin para associar as regras de caminho às suas origens correspondentes.
Rule Condition
Origin Address
bucket1
cdn-bucket1.oss-<region-id>.aliyuncs.combucket2
cdn-bucket2.oss-<region-id>.aliyuncs.com -
Especifique o cabeçalho Host de origem: Na Origin Fetch, use a opção Specify Origin HOST para garantir que as requisições de busca na origem sejam roteadas corretamente para o bucket de destino.
Origin Server Type
Origin Address
Tipo de HOST de origem
Origin Host
Rule Condition
Primary Origin Address
cdn-bucket1.oss-<region-id>.aliyuncs.comPrimary Origin Domain
cdn-bucket1.oss-<region-id>.aliyuncs.combucket1
Primary Origin Address
cdn-bucket2.oss-<region-id>.aliyuncs.comPrimary Origin Domain
cdn-bucket2.oss-<region-id>.aliyuncs.combucket2
-
Reescreva a URL de origem: Na Origin Fetch, adicione uma regra para Origin Path Rewrite. Esta regra remove o caminho virtual (como
/bucket1) durante uma busca na origem para corresponder ao caminho de armazenamento real do objeto.Path to Be Rewritten
Target Path
Flag
^/bucket1/(.*)$/$1break
^/bucket2/(.*)$/$1break
Verifique a configuração: Após concluir a configuração, você pode usar o único nome de domínio acelerado para acessar recursos de diferentes buckets do OSS com base no caminho. Por exemplo, uma requisição para
http://oss.example.com/bucket1/example.jpgbusca o arquivoexample.jpgno diretório raiz do bucketcdn-bucket1.
Busca na origem privada entre contas
Se você precisar buscar conteúdo de um bucket privado em outra conta (por exemplo, usar um nome de domínio acelerado na Conta A para acessar um bucket na Conta B), poderá ativar a Alibaba Cloud OSS Private Bucket Access para o seu nome de domínio acelerado e selecionar a opção entre contas.
Adicione o bucket entre contas como origem: Ao adicionar informações de origem para um novo nome de domínio acelerado, selecione Custom OSS Origin e insira o nome de domínio do bucket de destino.
Ative a busca na origem privada entre contas: Na Origin Fetch do nome de domínio acelerado, ative a Alibaba Cloud OSS Private Bucket Access. Para Type, selecione Cross-account or Same-account Origin Fetch e, em seguida, insira o AccessKey ID e o AccessKey Secret de uma conta com permissão para acessar o bucket de destino.
Implante em produção
Melhores práticas
Trânsito seguro: Ative o HTTPS
Para criptografar a transmissão de dados entre clientes e nós de CDN, configure an HTTPS certificate para o seu nome de domínio acelerado e ative o redirecionamento forçado para HTTPS. O HTTPS não apenas evita que os dados sejam roubados ou adulterados em trânsito, mas também evita avisos de segurança do navegador, o que aumenta a confiança do usuário e a imagem da marca.
Locais de configuração do certificado
|
Método de acesso |
Local de configuração |
Descrição |
|
Acesso direto a um nome de domínio do OSS |
Console do OSS |
Na seção do seu bucket. |
|
Acesso por meio de um nome de domínio acelerado do CDN |
Console do CDN |
Na seção HTTPS do nome de domínio acelerado. |
Um certificado curinga, como
*.example.com, corresponde apenas a subdomínios de segundo nível. Você deve solicitar um certificado separado para subdomínios de terceiro nível, comoimg.cdn.example.com.O OSS não suporta o protocolo HTTP/2. Para usar o HTTP/2, você deve acelerar o acesso por meio do CDN.
Otimização de desempenho: Configure a política de cache
As políticas de cache são fundamentais para o desempenho do CDN e devem abranger tanto a duração do cache quanto o tratamento de parâmetros.
Defina a expiração do cache
Maximize sua taxa de acerto de cache por meio de configuring CDN cache expiration rules:
|
Tipo |
Duração de cache recomendada |
Descrição |
|
Arquivos estáticos atualizados com pouca frequência (imagens, áudio, vídeo, pacotes de instalação) |
1 mês ou mais |
Reduz requisições desnecessárias à origem. |
|
Arquivos estáticos atualizados frequentemente (JS, CSS) |
Algumas horas a vários dias |
Gerencie atualizações com controle de versão (por exemplo, |
|
Arquivos dinâmicos ou APIs (PHP, JSP) |
0 segundos (não armazenar em cache) |
Garante que o conteúdo mais recente seja buscado a cada requisição. |
Configure o tratamento de parâmetros para ativar o Processamento de Imagem
O Processamento de Imagem do OSS, que inclui recursos como redimensionamento, recorte e marca d'água, é frequentemente usado. Por padrão, o CDN filtra todos os parâmetros para maximizar a taxa de acerto de cache, o que desativa as diretivas de Processamento de Imagem, como ?x-oss-process. Para usar esse recurso, modifique as configurações de parameter filtering na seção Optimization do seu nome de domínio acelerado no console do CDN.
|
Cenário |
Filtragem de parâmetros |
Descrição |
|
Distribuição de recursos puramente estáticos |
Filter All Parameters |
Maximiza a taxa de acerto de cache. |
|
Uso do Processamento de Imagem do OSS |
Retain All Parameters ou Retain Specified Parameter: |
Garante que as diretivas de Processamento de Imagem tenham efeito. |
|
Recursos com controle de versão |
Retain Specified Parameter: |
Suporta atualizações de cache com base em números de versão. |
Disponibilidade: Use prefetch e atualização automática
Após ativar o cache, as atualizações nos arquivos de origem não são propagadas imediatamente para os nós de borda do CDN. Use as seguintes estratégias:
Prefetch: Antes de um novo lançamento ou evento promocional, use o recurso Refresh and Prefetch Resources do CDN para distribuir recursos populares para nós de borda em todo o mundo. Isso evita que um aumento repentino de requisições à origem sobrecarregue sua origem no lançamento.
Atualização automática de cache: Na seção do seu bucket, ative a atualização automática do cache do CDN para o domínio vinculado. Quando você atualiza um arquivo do OSS usando uma API, o OSS aciona automaticamente uma tarefa de atualização do CDN.
A atualização automática de cache é eficaz apenas quando o service de CDN e o bucket do OSS pertencem à mesma conta do Alibaba Cloud. Ela não garante atualizações imediatas. Para cenários sensíveis ao tempo, recomendamos que você atualize manualmente o cache usando o recurso de atualização do CDN após a atualização dos arquivos.
Acesso entre origens: Configure uma política CORS
Quando um aplicativo front-end precisa fazer requisições entre origens para recursos do OSS acelerados pelo CDN, as regras CORS configuradas apenas no bucket do OSS podem não funcionar devido ao cache do CDN. A melhor prática é configurar os cabeçalhos de resposta relacionados ao CORS diretamente no nível do CDN:
No console do CDN, clique no nome de domínio acelerado ou clique em Manage na coluna Actions.
-
Na aba , configure os parâmetros e valores do cabeçalho de resposta.
Response Header
Header Value
CORS
Access-Control-Allow-Origin
*
Enable
Access-Control-Allow-Methods
POST, GET, HEAD, PUT, DELETE
Not applicable
Access-Control-Max-Age
3600
Not applicable
NotaAs configurações de parâmetros são apenas para referência. Ajuste-as com base no seu cenário de negócios real.
Otimização de desempenho: Melhore a transferência de arquivos grandes e dados
Ative o back-to-origin com Range: Para cenários como vídeo sob demanda e distribuição de arquivos grandes, é crucial configure Range back-to-origin. Este recurso permite que os nós do CDN solicitem arquivos grandes em partes, habilitando recursos avançados como busca em vídeos e reduzindo significativamente o tráfego de origem e a latência da primeira tela.
Otimize a transferência de dados: Para reduzir o tamanho de transferência de arquivos baseados em texto, como JS, CSS e HTML, você pode ativar Gzip compression ou Page Optimization no console do CDN.
Ativar a Otimização de Página ou a compactação Gzip altera os valores de
Content-LengtheContent-MD5de um arquivo. Se a lógica do seu aplicativo depende desses valores para verificação, use esses recursos com cautela.Se você ativar tanto a Otimização de Página quanto a compactação Gzip, apenas a compactação Gzip terá efeito.
Lançamento suave: Troca de domínio sem tempo de inatividade
Ao migrar seu service existente de um domínio de bucket do OSS para um nome de domínio acelerado, adote uma abordagem por fases:
Fase de preparação: Conclua todas as configurações para o nome de domínio acelerado e teste minuciosamente sua funcionalidade e desempenho em um ambiente de testes. Em particular, confirme se o Origin Host corresponde à vinculação de domínio do OSS e se os códigos de status de origem estão normais, para evitar que uma configuração de origem incorreta seja temporariamente mascarada pelo cache do CDN e, em seguida, cause uma interrupção nos negócios após a expiração do cache.
Fase de lançamento canário (recomendada fora dos horários de pico): Use um lançamento canário para mudar uma parte do seu tráfego para o nome de domínio acelerado, aumentando gradualmente o volume para mitigar riscos.
Fase de verificação: Monitore de perto os logs de acesso e as taxas de erro. Analise métricas importantes, como tempo de resposta e taxa de sucesso, para garantir que o service esteja funcionando normalmente.
Fase de lançamento completo: Após uma verificação minuciosa, migre todo o tráfego para o nome de domínio acelerado.
Plano de rollback: Se ocorrerem problemas, reverta imediatamente para o domínio do bucket, analise a causa raiz e, em seguida, faça uma nova implantação.
Prevenção de riscos
Proteção contra hotlink: Configure o Referer e a autenticação de URL
Para evitar que sites não autorizados façam hotlink dos seus recursos, o que pode levar a custos de tráfego desnecessários e consumo de largura de banda, você deve configurar políticas de segurança:
Proteção contra hotlink baseada em Referer: Configure a Referer whitelist or blacklist para permitir o acesso apenas de domínios especificados, validando o campo Referer no cabeçalho da requisição HTTP.
Autenticação de URL: Para um bucket privado do OSS, ativar o back-to-origin para bucket privado autoriza os nós do CDN a acessá-lo. Isso significa que recursos privados que anteriormente exigiam uma assinatura podem ser acessados publicamente através do domínio do CDN. Para restaurar o controle de segurança sobre esses recursos, configure URL authentication no nível do CDN.
Após ativar a aceleração do CDN, as requisições de hotlink podem atingir o cache do CDN diretamente sem passar pela origem, contornando assim a proteção contra hotlink do OSS. Para garantir que a proteção seja eficaz, você também deve configurar regras de proteção contra hotlink no nível do CDN.
Monitore anomalias de tráfego
Create an alert rule para o seu nome de domínio acelerado no Cloud Monitor para detectar prontamente picos anormais no tráfego do CDN.
Segurança da origem: Configure o SNI e o host
Garantir uma comunicação estável e segura entre o CDN e o OSS é fundamental para a disponibilidade do service.
Garanta que o host de origem corresponda à configuração de domínio do OSS
Quando o CDN busca conteúdo do OSS, ele usa o Origin Host como o cabeçalho Host da requisição de origem, e o OSS usa esse Host para identificar e rotear para o bucket de destino. Portanto, o Origin Host deve corresponder à configuração de domínio no lado do OSS. Caso contrário, o OSS não consegue identificar o bucket, e a busca na origem falha com erros como InvalidBucketName (HTTP 400), o que, por sua vez, faz com que o CDN retorne erros 5xx e interrompa o acesso.
Quando você adiciona a origem como um tipo OSS Domain (como em Step 1), o Origin Host assume como padrão o domínio do bucket de origem, que o OSS consegue identificar sem configuração extra.
Quando você adiciona a origem do OSS como um tipo origin domain ou IP, ou define manualmente o Origin Host como o CDN Domain, a requisição de origem carrega o domínio acelerado como seu Host, que o OSS não consegue identificar por padrão. Nesse caso, você deve vincular esse domínio acelerado ao bucket de destino em Domain Names do bucket do OSS para que o OSS possa identificar o bucket e buscar o conteúdo corretamente. Em resumo: se o Origin Host for o domínio do bucket, nenhuma vinculação é necessária; se o Origin Host for o domínio acelerado, você deve vincular o mesmo domínio no lado do OSS. Os dois devem corresponder, e a ausência de qualquer um deles causa erros.
Tenha cuidado ao mudar a origem para o OSS ou alterar o Origin Host em um domínio acelerado ativo que já possui conteúdo em cache: as requisições que atingem o cache do CDN ainda retornam normalmente, portanto, uma configuração de origem incorreta é temporariamente mascarada pelo cache. Após a expiração do cache, as buscas na origem falham em massa, o que pode interromper seus negócios e é difícil de diagnosticar. Recomenda-se que você primeiro vincule o domínio no OSS ou verifique o Origin Host, use um novo objeto sem cache (ou atualize o cache do CDN primeiro) e confirme que a busca na origem é bem-sucedida e retorna um código de status normal, e só então mude o tráfego ou aumente gradualmente.
Configure o SNI de back-to-origin
Para evitar que requisições de origem sem Server Name Indication (SNI) causem problemas de acesso ao OSS, você deve configure the default back-to-origin SNI no CDN. Defina o SNI para corresponder ao host de back-to-origin, que assume como padrão o nome de domínio acelerado. Quando uma requisição de origem inclui um SNI, o OSS pode identificar o domínio de negócios durante o handshake TLS e retornar o certificado correspondente. Se o OSS receber uma requisição sem um SNI, ele não poderá identificar com precisão o domínio de negócios e poderá acionar limites de tráfego mais rigorosos.
Oculte as informações de origem
Por padrão, o CDN usa o domínio do bucket para requisições de origem. Se ocorrer um erro de origem, como um arquivo não encontrado, a mensagem de erro pode expor o domínio do bucket do OSS, o que representa um risco de segurança. Para ocultar essas informações, altere o host de back-to-origin para o nome de domínio acelerado:
Na página Buckets, clique no bucket de destino. Em seguida, na seção , vincule o nome de domínio acelerado ao bucket.
No console do CDN, clique no nome de domínio acelerado de destino. Em seguida, na seção , clique em Modify e altere o Domain Type para CDN Domain.
Auditoria e solução de problemas: Ative os logs de acesso
Um ambiente de produção deve ter recursos abrangentes de registro de log para auditorias de segurança, análise de desempenho e solução de problemas. Configure real-time log delivery no console do CDN para enviar logs de acesso ao Log Service. Você pode usar o Log Service para realizar análises aprofundadas e configurar alertas para comportamento de acesso, distribuição de tráfego, recursos populares e erros de requisição.
Faturamento
|
Tipo de taxa |
Descrição |
|
Taxas do CDN |
Configurar o CDN para acelerar o acesso ao OSS incorre em taxas de tráfego do CDN. Para mais detalhes, consulte CDN billing overview. |
|
Taxas do OSS |
Quando um nó do CDN sofre uma falha de cache, ele puxa recursos do OSS, incorrendo em cobranças de tráfego de saída de origin-pull do CDN. Para mais detalhes, consulte CDN origin-pull egress traffic. |
Perguntas frequentes
Erros 5xx durante o back-to-origin do CDN
Um erro 5xx indica que o CDN não consegue recuperar recursos do servidor de origem do OSS. Para solucionar o problema, verifique o seguinte:
Aspecto | Descrição |
Configuração do servidor de origem | Verifique se o endereço do servidor de origem do OSS configurado no console do CDN está correto. |
Protocolo de back-to-origin | Se o CDN estiver configurado para back-to-origin HTTPS ou follow-protocol back-to-origin, garanta que o servidor de origem suporte HTTPS e tenha um certificado SSL configurado corretamente. |
Conectividade de rede | Teste a conectividade de rede de um nó do CDN ou da sua máquina local para o servidor de origem do OSS. Os nós do CDN são públicos, portanto, o servidor de origem deve ser acessível publicamente. |
Carga do servidor de origem | Na página CDN Real-time Monitoring, verifique se há picos repentinos de largura de banda e tráfego. Para recursos acessados frequentemente, você deve prefetch the resources e set a reasonable cache expiration rule. |
Erro 403 para sites estáticos com CDN
Causa: Esse problema geralmente ocorre quando você ativa a aceleração do CDN para um bucket privado configurado para static website hosting. A causa raiz é um conflito entre dois mecanismos de acesso:
Para requisições de back-to-origin para um bucket privado, o CDN inclui uma assinatura de autenticação.
O recurso de página de índice padrão da hospedagem de site estático do OSS (por exemplo, retornar
index.htmlquando/é acessado) requer uma requisição anônima.
Quando um usuário acessa o diretório raiz do domínio acelerado, o CDN envia uma requisição assinada para o diretório raiz do bucket. O OSS não aciona a lógica de hospedagem de site estático para requisições assinadas. Em vez disso, ele tenta realizar uma operação ListObjects, o que resulta em um erro 403.
Solução: Contorne o mecanismo de hospedagem de site estático do OSS e obtenha o mesmo comportamento configurando uma regra de url rewrite no CDN:
|
Parâmetro |
Valor |
|
Path to Be Rewritten |
|
|
Target Path |
|
|
Flag |
Redirect |
Upload de arquivos através de um domínio CDN
Por motivos de segurança, não recomendamos o upload de arquivos para o OSS através de um nome de domínio do CDN. Se o CDN estiver configurado para acesso de escrita pública, qualquer pessoa poderá fazer upload de arquivos para o OSS sem autenticação, o que torna seu bucket vulnerável a uploads maliciosos e adulteração de dados. Recomendamos que você faça o upload de arquivos usando um nome de domínio do OSS e aplique o princípio do menor privilégio.
Redução do tráfego do OSS com o CDN
Sim. Se os arquivos armazenados em cache no CDN tiverem uma alta taxa de acerto de cache, o tráfego de saída do OSS diminuirá significativamente, reduzindo seus custos de tráfego do OSS.
Isso funciona melhor em cenários onde os mesmos dados são acessados repetidamente, como visitas a sites, downloads de imagens e distribuição de jogos. Quanto maior a taxa de acerto de cache, menor o tráfego de back-to-origin e maior a economia de custos.
Rastreamento de requisições de acesso a arquivos
Após ativar a aceleração do CDN, os logs de acesso do OSS não registram requisições atendidas diretamente do cache do CDN. Você pode rastrear as requisições das seguintes maneiras:
Intervalo de dados | Método |
Dados de log dos últimos 30 dias | Baixe e analise os offline logs do CDN. |
Dados de log com mais de 30 dias | Após configure real-time log delivery no CDN, visualize e analise os dados na página CDN Real-time Log Data Statistics. |
Solução de problemas de erros 403 Forbidden
Um erro 403 Forbidden pode ser causado por controles de acesso no OSS ou no CDN. Para identificar a fonte, primeiro tente acessar o recurso diretamente através do seu nome de domínio padrão do OSS.
Se a requisição for bem-sucedida: O problema está no lado do CDN. Verifique as configurações do CDN, como proteção contra hotlink baseada em referer, autenticação de URL e configurações de back-to-origin para bucket privado.
Se a requisição também retornar um erro 403: O problema está no lado do OSS. Verifique suas configurações do OSS, como Bucket ACL, proteção contra hotlink baseada em referer e Bucket Policy.
Custos de tráfego do OSS após a migração para o CDN
Possíveis causas:
Algumas requisições ainda acessam o OSS diretamente: Verifique o código do seu aplicativo ou integrações de terceiros para encontrar quaisquer nomes de domínio do OSS que não tenham sido substituídos pelo nome de domínio acelerado pelo CDN.
Falhas de cache levam a requisições de back-to-origin: Cada falha de cache aciona uma requisição de back-to-origin, o que gera tráfego de back-to-origin do OSS. Verifique sua taxa de acerto de cache do CDN; se for baixa, otimize sua configuração de cache.
Um bucket de leitura pública está sendo acessado maliciosamente: Se o seu bucket tiver permissões de leitura pública, ele estará vulnerável a acessos maliciosos. Se os requisitos do seu negócio permitirem, recomendamos definir o bucket como privado e ativar o back-to-origin para bucket privado no CDN.