Ho appena abilitato i caricamenti S3 sulla mia istanza Discourse, configurata con un CDN Cloudfront. Ho appena testato il caricamento di un’immagine e di un file PDF come allegati nei post e sono stati caricati correttamente nel bucket S3. Tuttavia, ispezionando la pagina in cui sono mostrati entrambi, vedo che il PDF non utilizza il link del CDN, ma l’immagine sì.
Per l’immagine, l’attributo src dell’elemento img punta al CDN, che il browser utilizza per caricare la miniatura.
Per il file PDF, l’attributo src del link punta a un URL relativo (/uploads/short-url/xxxxxxxxxxxxx.pdf), che sembra reindirizzare al file nel mio bucket S3 effettivo (non al CDN).
È previsto? È la prima volta che utilizzo un CDN, quindi forse non si servono file più grandi tramite esso? Voglio solo assicurarmi che tutte le mie impostazioni siano corrette e funzionanti prima di migrare tutti i post precedenti a S3.
Penso che sia necessario rifare i post. Quelli caricati prima dell’aggiunta della CDN non vengono aggiornati automaticamente. Rifare tutti i post che corrispondono a un pattern, (potrebbe essere più facile rifarli tutti).
Ho appena rifatto il “rebake” di tutti i post e non ho riscontrato alcuna modifica. Dopo il “rebake”, ho creato nuovamente alcuni post di prova. Per riassumere ciò che sto vedendo (e sembra ciò che vede @Richie)
Un’immagine in un post collega correttamente al CDN per l’immagine visualizzata inline nel post.
Per l’immagine, tuttavia, il link “download” (in basso a destra quando si visualizza l’immagine a schermo intero) collega a un short-url, che reindirizza al mio bucket S3 (non al CDN).
Per un caricamento di PDF, il link collega a uno short-url, che reindirizza al mio bucket S3 (non al CDN).
Sembra che ogni volta che viene utilizzato uno short-url, il CDN non venga utilizzato nel reindirizzamento.
Per la mia configurazione di Discourse, sto utilizzando S3 sia per i caricamenti che per i backup. Non ho ancora spostato tutti i miei caricamenti esistenti su S3 (lo farò una volta superato questo problema). Inoltre, non ho abilitato i caricamenti sicuri.
Grazie per la segnalazione, la esamineremo la prossima settimana e risolveremo eventuali bypass CDN mancanti rimasti. Dovremmo sempre, ove possibile, raggiungere la CDN con l’avvertenza che se si dispone di caricamenti sicuri abilitati, non è possibile farlo facilmente.