Descrição do problema
Quando você usa o Content Delivery Network (CDN) para acelerar recursos no Object Storage Service (OSS), o acesso ao nome de domínio acelerado pelo CDN retorna o erro 403 Forbidden. Esse erro ocorre quando a origem é um bucket privado do OSS e os recursos de hospedagem de site estático e de busca na origem em bucket privado do OSS estão ativados. A mensagem de erro é a seguinte:
You don't have permission to access the URL on this server
As informações de depuração no navegador mostram a seguinte resposta:
X-Tengine-Error: You are forbidden to list buckets
Uma mensagem semelhante aparece.

Causa
O recurso de busca na origem em bucket privado do OSS no CDN entra em conflito com a configuração de página de índice padrão do recurso de hospedagem de site estático no OSS. Após ativar a busca na origem em bucket privado do OSS, o CDN adiciona uma assinatura às solicitações de busca na origem por padrão. Isso torna as solicitações não anônimas. No entanto, as solicitações que acionam a página de índice padrão do site estático precisam ser anônimas.
Quando a hospedagem de site estático está configurada em um bucket do OSS, a página de índice padrão do nome de domínio deve apontar para um arquivo específico, como index.html. Uma solicitação anônima para o nome de domínio do site, como https://example.com/, resolve automaticamente para a página de índice padrão, como https://example.com/index.html. No entanto, quando a busca na origem em bucket privado do OSS está ativada no CDN, a solicitação de busca na origem do CDN para o OSS não é anônima. Se essa solicitação é para o diretório raiz, o OSS a rejeita por padrão.
Soluções
Use os métodos a seguir para solucionar erros que ocorrem ao acessar um nome de domínio acelerado pelo CDN após ativar a busca na origem em um bucket privado do OSS.
-
Verifique a configuração de hospedagem de site estático.
-
Se o recurso de hospedagem de site estático estiver configurado no OSS, escolha uma das seguintes soluções:
-
Se você não precisa do recurso de hospedagem de site estático do OSS, desative-o. Para mais informações, consulte Hospedagem de site estático.
-
Se você precisa do recurso de hospedagem de site estático, defina o bucket do OSS como público para leitura e desative a busca na origem em bucket privado do OSS. Para informações sobre como desativar a busca na origem em bucket privado do OSS, consulte Busca na origem em bucket privado do OSS.
-
-
Se o recurso de hospedagem de site estático não estiver configurado no OSS, prossiga para a próxima etapa.
-
-
No CDN, configure uma regra de reescrita para redirecionar solicitações do diretório raiz para um arquivo específico. Por exemplo, reescreva o nome de domínio acelerado pelo CDN
www.example.comparawww.example.com/index.html. Para mais informações sobre como configurar regras de reescrita, consulte Configurar uma regra de reescrita.