Violazioni CORS intermittenti durante l’incorporamento di contenuto Edge Delivery Services in AEM Sites
Questo articolo spiega come risolvere i problemi relativi alle violazioni CORS (Cross-Origin Resource Sharing) intermittenti durante l’incorporamento di risorse Adobe Experience Manager (AEM) Edge Delivery Services (EDS) nelle pagine Adobe Experience Manager (AEM) Sites utilizzando l’approccio di incorporamento aem.live. Questi problemi possono influenzare le richieste di file JavaScript, API e altre risorse ospitate sul sito EDS, causando un comportamento di caricamento incoerente. Per risolvere il problema, convalida le intestazioni CORS e indaga le incoerenze relative alla memorizzazione in cache o alla propagazione.
Descrizione description
Ambiente
- Siti Adobe Experience Manager (AEM) (tutte le versioni)
- Edge Delivery Services (EDS)
Problema/Sintomi
- Le richieste di risorse non riescono a intermittenza a causa di violazioni dei criteri CORS.
- Gli errori della console del browser indicano errori relativi a CORS.
- Il problema si verifica in modo casuale e non influisce su ogni richiesta.
- Le richieste di risorse EDS incorporate, ad esempio file JavaScript o API, potrebbero non riuscire in modo imprevisto.
Causa principale
Si possono verificare violazioni CORS intermittenti quando le intestazioni di risposta richieste non vengono restituite in modo coerente con ogni richiesta. Questo comportamento può essere dovuto a problemi di configurazione, incoerenze nella memorizzazione nella cache o ritardi di propagazione tra livelli CDN o di consegna edge.
Risoluzione resolution
Per risolvere il problema, segui i passaggi seguenti:
- Verificare che il sito EDS sia configurato in modo da restituire l’intestazione
Access-Control-Allow-Originappropriata per tutte le risorse a cui si accede dalle pagine di AEM Sites, inclusi i file JavaScript e gli endpoint API. Verifica che i valori di intestazione configurati corrispondano alle origini che effettuano le richieste. - Controlla la configurazione dell’editor di intestazioni HTTP e assicurati che le regole di intestazione vengano applicate in modo coerente in tutti i percorsi e i tipi di file richiesti. Verifica la presenza di regole mancanti, sovrapposte o in conflitto che potrebbero causare una consegna incoerente delle intestazioni.
- Acquisire un file HAR durante la riproduzione del problema. Abilitare Mantieni registro nella scheda Rete del browser ed esaminare le richieste non riuscite per determinare se l’intestazione
Access-Control-Allow-Originè presente e se corrisponde all’intestazioneOrigindella richiesta. Verificare inoltre se le richieste di verifica preliminare diOPTIONShanno esito negativo o restituiscono risposte impreviste. - Se le intestazioni CORS sono configurate correttamente ma mancano in modo intermittente, esamina il comportamento della CDN e della cache edge. Esegui il test con parametri non compatibili con la cache o elimina le cache rilevanti per escludere risposte non aggiornate o non coerenti nella cache.
- Se il problema persiste, raccogli i file HAR insieme alle schermate della configurazione dell’editor di intestazioni HTTP e forniscili al supporto Adobe per ulteriori analisi.
- Verifica la risoluzione confermando che le richieste da AEM Sites alle risorse EDS hanno esito positivo e che non vengano visualizzati errori CORS nella console del browser.