Implementazione dei reindirizzamenti URL privi di pipeline
Scopri come implementare reindirizzamenti URL senza pipeline in AEM as a Cloud Service per consentire al team marketing di gestire i reindirizzamenti senza dover ricorrere a uno sviluppatore.
Esistono diverse opzioni per gestire i reindirizzamenti URL in AEM. Per ulteriori informazioni, vedi Reindirizzamenti URL.
L'esercitazione si concentra sulla creazione di reindirizzamenti URL come coppie chiave-valore in un file di testo come Apache RewriteMap e utilizza la configurazione specifica di AEM as a Cloud Service per caricarli nel modulo Apache/Dispatcher.
Prerequisiti
Per completare questa esercitazione, è necessario:
-
Ambiente AEM as a Cloud Service con versione 18311 o successiva.
-
Il progetto WKND Sites di esempio deve essere distribuito su di esso.
Caso di utilizzo del tutorial
Ai fini della demo, supponiamo che il team di marketing WKND stia lanciando una nuova campagna di sci. Vorrebbe creare brevi URL per le pagine di avventura sciistica e gestirle in modo autonomo, come nel caso di come gestiscono il contenuto. Hanno deciso di utilizzare l'approccio reindirizzamenti URL senza pipeline per gestire i reindirizzamenti URL.
In base ai requisiti del team di marketing, di seguito sono riportati i reindirizzamenti URL da creare.
Ora vediamo come gestire questi reindirizzamenti URL e le configurazioni Dispatcher una tantum richieste nell’ambiente AEM as a Cloud Service.
Come gestire i reindirizzamenti URL manage-redirects
Per gestire i reindirizzamenti URL sono disponibili più opzioni, esaminiamole.
File di testo in DAM
I reindirizzamenti URL possono essere gestiti come coppie chiave-valore in un file di testo e caricati in AEM Digital Asset Management (DAM).
Ad esempio, i reindirizzamenti URL di cui sopra possono essere salvati in un file di testo denominato skicampaign.txt
e caricati nella cartella DAM @ /content/dam/wknd/redirects
. Dopo la revisione e l’approvazione, il team di marketing può pubblicare il file di testo.
# Ski Campaign Redirects separated by the TAB character
/ski /us/en/adventures.html
/ski/northamerica /us/en/adventures/downhill-skiing-wyoming.html
/ski/westcoast /us/en/adventures/tahoe-skiing.html
/ski/europe /us/en/adventures/ski-touring-mont-blanc.html
ACS Commons - Gestione mappa di reindirizzamento
Il ACS Commons - Redirect Map Manager fornisce un'interfaccia intuitiva per gestire i reindirizzamenti URL.
Ad esempio, il team marketing può creare una nuova pagina Mappe di reindirizzamento denominata SkiCampaign
e aggiungere i reindirizzamenti URL precedenti utilizzando la scheda Modifica voci. I reindirizzamenti URL sono disponibili in /etc/acs-commons/redirect-maps/skicampaign/jcr:content.redirectmap.txt
.
ACS Commons - Gestione reindirizzamento
In alternativa, ACS Commons - Redirect Manager fornisce anche un'interfaccia intuitiva per gestire i reindirizzamenti URL.
Ad esempio, il team marketing può creare una nuova configurazione denominata /conf/wknd
e aggiungere i reindirizzamenti URL precedenti utilizzando il pulsante + Configurazione reindirizzamento. I reindirizzamenti URL sono disponibili in /conf/wknd/settings/redirects.txt
.
Come configurare Dispatcher
Per caricare i reindirizzamenti URL come RewriteMap e applicarli alle richieste in ingresso, sono necessarie le seguenti configurazioni di Dispatcher.
Abilita modulo Dispatcher per la modalità flessibile
Verificare innanzitutto che il modulo Dispatcher sia abilitato per la modalità flessibile. La presenza del file USE_SOURCES_DIRECTLY
nella cartella dispatcher/src/opt-in
indica che Dispatcher è in modalità flessibile.
Carica reindirizzamenti URL come RewriteMap
Creare quindi un nuovo file di configurazione managed-rewrite-maps.yaml
nella cartella dispatcher/src/opt-in
con la seguente struttura.
maps:
- name: <MAPNAME>.map # e.g. skicampaign.map
path: <ABSOLUTE_PATH_TO_URL_REDIRECTS_FILE> # e.g. /content/dam/wknd/redirects/skicampaign.txt, /etc/acs-commons/redirect-maps/skicampaign/jcr:content.redirectmap.txt, /conf/wknd/settings/redirects.txt
wait: false # Optional, default is false, when true, the Apache waits for the map to be loaded before starting
ttl: 300 # Optional, default is 300 seconds, the reload interval for the map
Durante la distribuzione, Dispatcher crea il file <MAPNAME>.map
nella cartella /tmp/rewrites
.
managed-rewrite-maps.yaml
) e la posizione (dispatcher/src/opt-in
) devono corrispondere esattamente a quanto indicato sopra. Consideralo come una convenzione da seguire.Applicare i reindirizzamenti URL alle richieste in ingresso
Infine, crea o aggiorna il file di configurazione di riscrittura Apache per utilizzare la mappa precedente (<MAPNAME>.map
). Ad esempio, utilizziamo il file rewrite.rules
della cartella dispatcher/src/conf.d/rewrites
per applicare i reindirizzamenti URL.
...
# Use the RewriteMap to define the URL redirects
RewriteMap <MAPALIAS> dbm=sdbm:/tmp/rewrites/<MAPNAME>.map
RewriteCond ${<MAPALIAS>:$1} !=""
RewriteRule ^(.*)$ ${<MAPALIAS>:$1|/} [L,R=301]
...
Esempi di configurazioni
Esaminiamo le configurazioni di Dispatcher per ciascuna delle opzioni di gestione del reindirizzamento URL sopra.
Quando i reindirizzamenti URL vengono gestiti come coppie chiave-valore in un file di testo e caricati in DAM, le configurazioni sono le seguenti.
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-none |
---|
|
Quando i reindirizzamenti URL vengono gestiti utilizzando ACS Commons - Redirect Map Manager, le configurazioni sono le seguenti.
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-none |
---|
|
Quando i reindirizzamenti URL vengono gestiti utilizzando ACS Commons - Redirect Manager, le configurazioni sono le seguenti.
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="Nome del file dell’esempio di codice riportato di seguito."}
code language-none |
---|
|
Come distribuire le configurazioni
Per distribuire le configurazioni, utilizzare la pipeline full-stack o configurazione a livello web in Cloud Manager.
Una volta completata la distribuzione, i reindirizzamenti URL sono attivi e il team marketing può gestirli senza dover ricorrere a uno sviluppatore.
Come verificare i reindirizzamenti URL
Verifichiamo i reindirizzamenti URL utilizzando il browser o il comando curl
. Accedere all'URL /ski/westcoast
e verificare che venga reindirizzato a /us/en/adventures/tahoe-skiing.html
.
Riepilogo
In questa esercitazione hai imparato a gestire i reindirizzamenti URL utilizzando configurazioni prive di pipeline nell’ambiente AEM as a Cloud Service.
Il team marketing può gestire i reindirizzamenti URL come coppie chiave-valore in un file di testo e caricarli in DAM oppure utilizzare ACS Commons - Redirect Map Manager o Redirect Manager. Le configurazioni di Dispatcher vengono aggiornate per caricare i reindirizzamenti URL come RewriteMap e applicarle alle richieste in ingresso.