Problema

Quando si attivano contenuti nel proprio sito AEM, le modifiche vengono visualizzate sulle istanze di pubblicazione, ma non sul sito Web vero e proprio.

Causa

Ci possono essere molte cause per cui dipende dall'architettura che varia.

Le cause possono essere:

  • Se si utilizza un CDN
    • Impostazioni TTL errate
    • Intestazioni relative alla cache errate o mancanti (Cache-Control, Pragma Expires)
  • Il dispatcher o il serverweb non funziona o è configurato in modo errato

Risoluzione

Il primo passo per il debug di un problema di questo tipo è quello di isolare il problema. Sappiamo già che le istanze di pubblicazione dell'AEM si stanno aggiornando con le attivazioni. Quindi il problema deve risiedere nello Stack Web a monte, compresi CDN e Web Server / Dispatcher cache.

I. Controlla i Web Server / Dispatcher per vedere se il contenuto è obsoleto

 

  1. Se il contenuto dei dispatcher non è obsoleto, il problema è costituito dalle configurazioni CDN TTL o dalle intestazioni inviate da dispatcher e AEM.  Seguire la sezione “II. CDN Issues” qui sotto a titolo indicativo

  2. Se i dispatcher hanno un contenuto obsoleto, allora qualcosa non è configurato correttamente o non funziona correttamente su uno di questi dispatcher.  Seguire la sezione “IV. Dispatcher Cache Issues” come guida.

II. Problemi CDN

Se il contenuto della CDN è obsoleto, è possibile provare quanto segue:

  1. Accedi all'interfaccia di gestione CDN e verifica le configurazioni TTL. Se i TTL sono impostati nella configurazione CDN, assicurarsi che non siano troppo alti.

  2. Accedere al contenuto direttamente dal dispatcher e verificare l'esistenza di intestazioni HTTP relative alla cache come Cache-Control: max-age, Expires e Pragma. Ad esempio http://dispatcher-host1/content/geometrixx/en.html

  3. Prova a bypassare il dispatcher aggiungendo una stringa di query nell'URL, per esempio http://dispatcher-host1/content/geometrixx/en.html?bypasscache=1. Controllare le intestazioni relative alla cache anche per questa risposta.  Le intestazioni possono differire tra quelle restituite da una risposta in cache. Si noti che dopo uno svuotamento della cache del dispatcher, la prima risposta HTTP sarà la stessa di quando si bypassa il dispatcher. A causa di questo, alcuni server perimetrali CDN riceveranno la risposta bypassata e altri riceveranno la risposta in cache dal dispatcher.

Nota:

Se le intestazioni relative alla cache sono omesse dalla risposta HTTP, allora alcuni CDN come Amazon Cloudfront metteranno in cache la risposta per un tempo indefinito (supponendo che non siano impostati TTL). 

III. Agente di svuotamento bloccato o non configurato

Se si è determinato che il problema non è a livello CDN, il passo successivo è quello di controllare le configurazioni degli agenti di scaricamento AEM.

Assicurati di aver configurato gli agenti di scaricamento e che siano abilitati

Controlla le code degli agenti di svuotamento se i processi di svuotamento della cache vengono elaborati o bloccati in coda.

  1. 1. L'agente di svuotamento è in stato di blocco
    Se la pagina dell'agente di svuotamento del dispatcher mostra lo stato di blocco potrebbe esserci un problema di connettività di rete tra AEM e il server o i server del dispatcher.  Assicurati che tutte le istanze AEM con agenti di svuotamento configurati possano raggiungere i server del dispatcher. Modificare le regole del firewall, se necessario, per consentire la connettività tra i server.

  2. 2. L'agente di svuotamento è in stato attivo con molti processi in coda
    Se l'agente mostra uno stato attivo ma ci sono molti lavori, allora potrebbero esserci:
    a. Un errore durante lo svuotamento
    b. Il Server Web risponde con estrema lentezza alle richieste di svuotamento
    c. O un problema con l'elaborazione dei lavori di AEM

  3. 3. L'agente di svuotamento è in stato attivo senza processi in coda
    Se l'agente mostra uno stato attivo ma non ci sono processi in coda, il server web restituisce una risposta di 200 richieste di svuotamento ma non esegue effettivamente lo svuotamento.

IV. Problemi di cache del dispatcher

  1. Testare una richiesta di svuotamento di un dispatcher manuale utilizzando cURL

    Testare una richiesta di svuotamento del dispatcher utilizzando cURL. Se si ottiene qualcosa di diverso da una risposta 200 con il contenuto della risposta "OK", allora lo svuotamento del dispatcher non viene processato dal modulo dispatcher. Seguite i passaggi seguenti per effettuare il debug. 

    curl -v -H "CQ-Action: Activate" \ 
         -H "CQ-Handle: /content/bar" \ 
         -H "Content-Length: 0" \
         -H "Content-Type: application/octet-stream" \ 
         http://dispatcher-server-hostname:port/dispatcher/invalidate.cache
  2. Controllare il dispatcher.any configurazione

    Verifica la allowedClients

    Controlla la configurazione /allowedClients delle aziende di spedizione configurate in dispatcher.any configurations. Assicurati che l'indirizzo IP di tutte le istanze di AEM che dovrebbero emettere richieste di svuotamento sia elencato. 

  3. Controllare la configurazione del Web Server

Microsoft IIS:

A. Controlla "Richiesta di filtraggio"

  1. Accedere al server IIS tramite RDP come amministratore

  2. Apri il Server Manager => Ruoli => Gestione IIS

  3. In Gestione IIS, navigare verso il basso fino al tuo sito abilitato AEM Dispatcher

  4. Aprire le Richiesta filtro

  5. Assicurarsi che le configurazioni di svuotamento non blocchino lerichieste di GET e POST a /dispatcher/invalidate.cache

Per ulteriori informazioni su come accedere e modificare queste configurazioni, consulta la documentazione Microsoft.

B. Controllare le regole di sovrascrittura IIS

  1. Accedi al server IIS tramite RDP come amministratore

  2. Aprire il Server Manager => Ruoli => IIS Manager

  3. In IIS Manager, sfoglia verso il basso per trovare il sito abilitato AEM Dispatcher

  4. Apri URL Sovrascritto

  5. Rivedere le regole per determinare se qualcuno potrebbe bloccare o interrompere le richieste GET o POST verso /dispatcher/invalidate.cache

Per ulteriori informazioni su come accedere e modificare queste configurazioni, consultare la documentazione Microsoft.

Apache Web Server.

A. Controllare le configurazioni di RewriteRule

Rivedere e RewriteRule le direttive nelle configurazioni httpd per convalidare se qualcuno potrebbe bloccare o interrompere le richieste diGEToPOST verso /dispatcher/invalidate.cache

Questo prodotto è concesso in licenza in base alla licenza di Attribuzione-Non commerciale-Condividi allo stesso modo 3.0 Unported di Creative Commons.  I post su Twitter™ e Facebook non sono coperti dai termini di Creative Commons.

Note legali   |   Informativa sulla privacy online