Öffnen Sie http://aem-host:port/miscadmin für jede AEM-Veröffentlichungsinstanz.
Wenn ich mehrere virtuelle Hosts mit separaten AEM-Dispatcher-Cache-Bereichen auf meinem Webserver konfiguriert habe, wie kann ich dann den korrekten Cache auf dem AEM-Server leeren?
Umgebung
Apache-HTTP-Server / AEM-Dispatcher
Schritte
Richten Sie einen Dispatcher-Lösch-Agent pro Dispatcher-Bereich ein. Legen Sie dann den Host-Header fest und konfigurieren Sie die „Agent-Benutzer-ID“ mit einem Benutzer, der Lesezugriff auf relevante Pfade hat.
In den untenstehenden Lösungen nehmen wir Folgendes an:
- Sie verwenden Apache HTTP-Server 2.2 oder eine neuere Version
- Mehrere VirtualHosts konfiguriert
- Mehrere Dispatcher-Farmen mit separaten Caches
Beispiel:
Konfigurationen mit Apache-httpd-VirtualHost:
NameVirtualHost *:80 <VirtualHost *:80> ServerName www.geometrixx.com ServerAlias *.geometrixx.com DocumentRoot /var/www/html/cache-www-geometrixx-com ... </VirtualHost> <VirtualHost *:80> ServerName www.geometrixx-outdoors.com ServerAlias *.geometrixx-outdoors.com DocumentRoot <Global Doc root>/site2 Include <Configurations specific to site2> </VirtualHost> DocumentRoot /var/www/html/cache-www-geometrixx-outdoors-com
In der Dispatcher-Konfiguration haben Sie mehrere Farmen, die so konfiguriert sind, dass sie verschiedene Bereiche nach Hostnamen (virtualhosts) verwalten:
/virtualhosts { "*geometrixx.com*" } /renders { ... } /cache { /docroot "/var/www/html/cache-www-geometrixx-com"
Richten Sie mehrere Flush-Agenten ein.
Wenn Sie nur wenige separate Dispatcher-Farmen (5 oder weniger) haben, ist die Konfiguration mehrerer Flush-Programme eine einfache Lösung.
-
-
Navigieren Sie zu Replikation => Agenten auf Veröffentlichungsinstanz.
-
Klicken Sie auf Bearbeiten.
-
Geben Sie unter Agent-User-ID den Namen eines Benutzers ein, den Sie später erstellen und der diesem Agenten zugeordnet wäre. Sie können eine Namenskonvention mit dem Hostnamen der Seite verwenden. Zum Beispiel: „flush-agent-www-geometrixx-com“.
-
Wählen Sie die Registerkarte „Erweitert“ aus.
-
Fügen Sie einen anderen Header unter HTTP-Header hinzu. Geben Sie „Host: www.geometrixx.com“ ein, wobei „www.geometrixx.com“ durch einen der DNS-Hosts der Websites ersetzt werden sollte.
-
Klicken Sie zum Speichern auf Ok.
-
Gehen Sie zu http://aem-host:port/useradmin und erstellen Sie den Benutzer aus Schritt 4.
-
Auf der Registerkarte Berechtigungen des Benutzers gewähren Sie dem Benutzer Lesezugriff auf alle Pfade, die der Agent für die referenzierte Seite freigeben soll. Zum Beispiel: „/content/geometrixx, /content/dam, /etc, /libs, /apps, /var“.
-
Speichern.
-
Wiederholen Sie die Schritte 1 bis 10 für alle anderen Seiten in jeder Veröffentlichungsinstanz. Sie erstellen einen Flush-Agenten für jede Seite in jeder Veröffentlichungsinstanz.
-
Geben Sie auf dem Webserver gemeinsame Pfade mit „symlinks“ frei. Zum Beispiel könnten Sie „symlinks“ für /content/dam, /etc, /libs, /apps und /var auf einen gemeinsamen Cache-Speicherort setzen. Dann würde „/content“ und alles, was sich untergeordnet des Caches befindet, getrennt zwischengespeichert. Ein Beispielbefehl für den Ordner „/libs“:
ln -s /var/www/html/cache-www-geometrixx-com/libs /var/www/html/shared-cache
-
Wenn Sie jetzt Seiten unter einer bestimmten Site aktivieren, wird die Löschungsanforderung nur an den entsprechenden Flush-Agenten weitergeleitet.