Come eseguire il flush delle risorse mappate URL dal dispatcher

Domanda

CQ5 fornisce funzionalità di mappatura degli URL tramite Apache Sling. Uno dei requisiti più importanti è quello di essere in grado di consentire URL ottimizzati SEO.
In combinazione con la memorizzazione in cache del Dispatcher, è presente una discrepanza tra le risorse html precedentemente memorizzate nella cache e la richiesta di flush del dispatcher. Inoltre, se statfileslevel è configurato a un valore > 0, la posizione dei file .stat usati per determinare la validità-cache non corrisponde ai file effettivamente memorizzati in cache.

Esempio:

  • richiesta http://www.mydomain.com/geometrixx/en/company.html
  • memorizzato in cache dal Dispatcher all'indirizzo <docroot>/geometrixx/en/company.html
  • /content/geometrixx/en/company è replicato dall'istanza di authoring
  • L'agente di flush del Dispatcher richiede il flush di /content/geometrixx/en/company dalla cache del Dispatcher
  • Il modulo del Dispatcher cerca di eseguire il flush delle risorse a <docroot>/content/geometrixx/en/company.* e non trova nulla -> flush non eseguito sulla cache

Risposta, Soluzione

Il problema effettivo è che la richiesta di flush del Dispatcher invia il percorso assoluto di una risorsa su cui eseguire il flush dalla cache del Dispatcher come risultato di una replicazione. Per risolvere questa incongruenza, riscrivi gli URL mappati al loro percorso assoluto originale a livello di server Web, che fa sì che il modulo del Dispatcher legga, scriva ed esegua il flush delle voci della cache in modo coerente a livello di filesystem. Questo vale anche per la lettura e la scrittura di file .stat.

Se il server HTTP Apache viene utilizzato come server Web, mod_rewrite fornisce tutte le funzionalità necessarie per ottenere la riscrittura.

Di seguito è riportato un esempio di come configurare la riscrittura con il modulo mod_rewrite di Apache. L'esempio si basa su:

  • richieste di mappa in arrivo al dominio www.geometrixx.de a /content/geometrixx/de
<VirtualHost *:80> ServerName www.geometrixx.de RewriteEngine On RewriteRule ^/(.*\.html)$ /content/geometrixx/de/$1 [PT] <Directory /> <IfModule disp_apache2.c> SetHandler dispatcher-handler </IfModule> Options FollowSymLinks AllowOverride None </Directory> </VirtualHost> 

Prodotti interessati:

CQ5.2.x, CQ5.3

Logo Adobe

Accedi al tuo account