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
Accedi al tuo account