URL's extern maken externalizing-urls
In Adobe Experience Manager (AEM), is externalizer de dienst OSGI die u programmatically een middelweg (bijvoorbeeld, /path/to/my/page
) in een externe en absolute URL (bijvoorbeeld, https://www.mycompany.com/path/to/my/page
) laat omzetten door de weg met pre-gevormde DNS te bevestigen.
Omdat een instantie zijn uiterlijk zichtbare URL niet kan kennen als het achter een Weblaag loopt, en omdat soms een verbinding buiten het verzoekwerkingsgebied moet worden gecreeerd, verstrekt deze dienst een centrale plaats om die externe URLs te vormen en hen te bouwen.
Deze pagina verklaart hoe te om de dienst te vormen Externalzer en hoe te om het te gebruiken. Voor meer details, zie JavaDocs.
De service ExternalAlizer configureren configuring-the-externalizer-service
De ExternalAlizer dienst laat u veelvoudige domeinen centraal bepalen die aan programmatically voorvoegselmiddelwegen kunnen worden gebruikt. Elk domein wordt geïdentificeerd door een unieke naam die wordt gebruikt om programmatically naar het domein te verwijzen.
Om een domeinafbeelding voor de Externalalizer dienst te bepalen:
-
Navigeer aan de configuratiemanager via Hulpmiddelen, dan Console van het Web, of ga binnen:
https://<host>:<port>/system/console/configMgr
-
Klik Dag CQ Verbinding Externalzer om de doos van de configuratiedialoog te openen.
note note NOTE De directe koppeling naar de configuratie is https://<host>:<port>/system/console/configMgr/com.day.cq.commons.impl.ExternalizerImpl
-
Bepaal de afbeelding van a Domeinen: een afbeelding bestaat uit een unieke naam die in de code kan worden gebruikt om naar het domein, een ruimte, en het domein te verwijzen:
<unique-name> [scheme://]server[:port][/contextpath]
Waarbij:
-
regeling is http of https, maar kan ook ftp, etc. zijn.
- gebruik https om https-koppelingen af te dwingen, indien gewenst
- wordt gebruikt als de clientcode het schema niet overschrijft wanneer wordt gevraagd om externalisatie van een URL.
-
server is de gastheernaam (kan een domeinnaam of ip adres zijn).
-
haven (facultatief) is het havenaantal.
-
contextpath (facultatief) wordt slechts geplaatst als AEM als webapp onder een verschillende contextweg geïnstalleerd is.
Bijvoorbeeld:
production https://my.production.instance
De volgende toewijzingsnamen zijn vooraf gedefinieerd en moeten worden ingesteld omdat AEM op deze namen vertrouwt:
local
- de lokale instantieauthor
- de DNS van het ontwerpsysteempublish
- de openbare naar voren gerichte website DNS
note note NOTE Met een aangepaste configuratie kunt u een categorie toevoegen, zoals production
,staging
of zelfs externe niet-AEM systemen, zoalsmy-internal-webservice
. Het is handig om hardcodering van dergelijke URL's op verschillende plaatsen in de codebase van een project te voorkomen. -
-
Klik sparen om uw veranderingen te bewaren.
De service ExternalAlizer gebruiken using-the-externalizer-service
Deze sectie toont een paar voorbeelden van hoe de dienst Externalzer kan worden gebruikt:
-
om de dienst Externalzer in JSP te krijgen:
code language-java Externalizer externalizer = resourceResolver.adaptTo(Externalizer.class);
-
om een weg met het "te externaliseren"domein:
code language-java String myExternalizedUrl = externalizer.publishLink(resolver, "/my/page") + ".html";
Het veronderstellen van de domeinafbeelding:
publish https://www.website.com
myExternalizedUrl
eindigt omhoog met de waarde:https://www.website.com/contextpath/my/page.html
-
om een weg met het "auteur"domein externaliseren:
code language-java String myExternalizedUrl = externalizer.authorLink(resolver, "/my/page") + ".html";
Het veronderstellen van de domeinafbeelding:
author https://author.website.com
myExternalizedUrl
eindigt omhoog met de waarde:https://author.website.com/contextpath/my/page.html
-
om een weg met het "lokale"domein externaliseren:
code language-java String myExternalizedUrl = externalizer.externalLink(resolver, Externalizer.LOCAL, "/my/page") + ".html";
Het veronderstellen van de domeinafbeelding:
local https://publish-3.internal
myExternalizedUrl
eindigt omhoog met de waarde:https://publish-3.internal/contextpath/my/page.html
-
U kunt meer voorbeelden in JavaDocsvinden.