Uploads S3 - Usando CDN para PDFs?

Olá a todos,

Acabei de habilitar uploads S3 na minha instância Discourse, configurada com um CDN Cloudfront. Testei o upload de uma imagem e um arquivo PDF como anexos em posts e eles foram carregados corretamente no bucket S3. No entanto, inspecionando a página onde ambos são exibidos, vejo que o PDF não usa o link do CDN, mas a imagem usa.

Para a imagem, o src da img aponta para o CDN, que o navegador usa para carregar a miniatura.

Para o arquivo PDF, o src do link aponta para um URL relativo (/uploads/short-url/xxxxxxxxxxxxx.pdf), que parece redirecionar para o arquivo no meu bucket S3 real (não o CDN).

Isso é esperado? Esta é a primeira vez que uso um CDN, então talvez um não sirva arquivos maiores através dele? Só quero ter certeza de que todas as minhas configurações estão corretas e funcionando antes de migrar todos os posts antigos para S3.

Obrigado!

4 curtidas

Observação interessante, algo que eu não tinha notado antes.

Fiz alguns testes.

Alguns uploads de PDF existentes se conectam diretamente ao CDN:

Alguns uploads de PDF existentes não usam o CDN:

Qual a diferença? :thinking:

Eu não sei :man_shrugging: Eu precisaria verificar mais exemplos.

Tentei um teste rápido enviando uma mensagem para mim mesmo e uma nova postagem, mostra /short-url/ conforme seus detalhes:

Clicar no link então puxa diretamente do bucket S3, novamente conforme sua descrição:

Não tenho certeza por que algumas de nossas postagens usam o CDN e outras não, mas consigo replicar parte do que você está vendo.

1 curtida

Eu acho que você precisa reassarar as postagens. As que foram carregadas antes de você adicionar a CDN não são atualizadas automaticamente. Reassar todas as postagens que correspondem a um padrão (pode ser mais fácil apenas reassar todas elas)

1 curtida

Obrigado @pfaffman

Acabei de reprocessar todas as postagens e não encontrei nenhuma alteração. Após o reprocessamento, criei algumas postagens de teste novamente. Para recapitular o que estou vendo (e parece o que @Richie está vendo)

  • Uma imagem em uma postagem vincula corretamente ao CDN para a imagem exibida inline na postagem.
  • Para a imagem, no entanto, o link “download” (canto inferior direito ao visualizar a imagem em tamanho real) vincula a um URL curto, que redireciona para meu bucket S3 (não para o CDN)
  • Para um upload de PDF, o link vincula a um URL curto, que redireciona para meu bucket S3 (não para o CDN).

Parece que sempre que um URL curto é usado, o CDN não é usado no redirecionamento.

Para minha configuração do Discourse, estou usando S3 para uploads e backups. Ainda não movi todos os meus uploads existentes para o S3 (farei isso assim que superar esse problema). Também não tenho uploads seguros habilitados.

Obrigado!

4 curtidas

Obrigado por relatar isso, vamos analisar na próxima semana e resolver quaisquer desvios de CDN ausentes que restarem. Sempre devemos, sempre que possível, alcançar a CDN com a ressalva de que, se você tiver uploads seguros ativados, não poderemos fazê-lo facilmente.

5 curtidas

Notei isso com outros uploads de arquivos também:

1 curtida