AEM: i collegamenti PDF nel componente Testo vengono sempre scaricati a causa dell’intestazione Content-Disposition

Questo articolo spiega perché i collegamenti PDF creati nel componente Testo di Adobe Experience Manager (AEM) possono sempre attivare i download invece di aprirli in una nuova scheda e fornisce i passaggi per risolvere il problema.

Descrizione description

Ambiente

Adobe Experience Manager (AEM), tutte le versioni

Problema/Sintomi

  • Quando si crea un collegamento PDF nel componente Testo predefinito di AEM (Editor Rich Text), facendo clic su tale collegamento viene sempre possibile scaricare il PDF, indipendentemente dal fatto che sia impostato per l’apertura in una nuova scheda o nella stessa scheda.
  • L’intestazione di risposta del browser per PDF include content-disposition: attachment.
  • Questo comportamento persiste anche quando si tenta di eseguire l’override dell’intestazione tramite la configurazione di Dispatcher o aggiungendo il percorso PDF ai Percorsi di risorsa esclusi nel Filtro di disposizione Sling di Apache.
  • Deselezionando l’opzione Abilita per tutti i percorsi delle risorse nel filtro di disposizione, i PDF possono essere aperti in una nuova scheda come previsto.
  • Il problema potrebbe non essere riproducibile in tutti gli ambienti o i browser. In alcuni casi, la cancellazione della cache CDN risolve il problema.

Causa

Per impostazione predefinita, l’intestazione Content-Disposition è impostata su attachment per le risorse binarie (come i PDF) in AEM Publish. In questo modo i browser scaricano il file invece di visualizzarlo in linea. Il problema può essere risolto sostituendo questa intestazione a livello di Dispatcher o regolando il filtro di disposizione.

Risoluzione resolution

Per risolvere il problema, segui i passaggi seguenti:

  1. Verifica l’ambiente per determinare se il problema si verifica in Author, Publish o in entrambi. Adobe consiglia di modificare solo le intestazioni di Content-Disposition sul livello Publish.

  2. Controlla le impostazioni del filtro di disposizione Apache Sling.

    • Nella console web di AEM, passa a Filtro disposizione Sling Apache.
    • Se è selezionata l’opzione Attiva per tutti i percorsi delle risorse, provare a deselezionarla e verificare se i PDF vengono aperti in una nuova scheda.
    • Se devi mantenere selezionata l’opzione Abilita per tutti i percorsi di risorsa, aggiungi i percorsi PDF pertinenti a Percorsi di risorsa esclusi e riprova.
  3. Regola la configurazione Dispatcher per il livello di pubblicazione.

    Aggiungi o aggiorna la seguente regola per ignorare l’intestazione Content-Disposition per i file PDF:

    code language-none
    Header unset Content-Disposition
    Header set Content-Disposition inline
    
  4. Ricarica la configurazione del Dispatcher e cancella tutte le cache pertinenti.

  5. Dopo aver apportato modifiche alla configurazione, cancella la CDN e la cache del browser per assicurarti che le nuove intestazioni siano applicate.

  6. Verifica il collegamento PDF creando un collegamento PDF nel componente Testo di AEM e verifica che facendo clic sul collegamento si apra il PDF in una nuova scheda, anziché scaricarlo.

recommendation-more-help
experience-cloud-kcs-help-kbarticles