Bilder können in Adobe Experience Manager as a Cloud Service nicht geladen werden
In Adobe Experience Manager as a Cloud Service können Bilder möglicherweise nicht geladen werden und im Browser als beschädigt angezeigt werden. Netzwerkanforderungen werden wiederholt umgeleitet, wodurch Bild-URLs mit duplizierten Pfadsegmenten zunehmen und Bilder nicht korrekt geladen werden können. Um dieses Problem zu beheben, aktualisieren Sie die Dispatcher-Neuschreibungsregel, damit Bild-URLs, die bereits den richtigen Inhaltspfad verwenden, nicht erneut verarbeitet werden.
Beschreibung description
Umgebung
- Produkt: Adobe Experience Manager as a Cloud Service
- Instanz: Staging
Symptome
- Bilder können nicht geladen werden und erscheinen im Browser beschädigt.
- Die Netzwerkaktivität zeigt wiederholte 302- oder 304-Umleitungsantworten für Bildanforderungen an.
- Bild-URLs zeigen rekursive Pfadsegmente mit Schleife an, wobei Teile des Pfads mehrfach wiederholt werden.
Ursache
Eine Dispatcher-Neuschreibungsregel leitet Bild-URLs an einen vollständigen Inhaltspfad um, hindert sich jedoch nicht daran, bereits korrekte Pfade abzugleichen. Dieses Verhalten führt zu unendlichen Umleitungsschleifen und falsch formatierten URLs.
Lösung resolution
Gehen Sie wie folgt vor, um das Problem zu beheben.
-
Identifizieren Sie die Dispatcher-Konfigurationsdatei, die die Neuschreibungsregeln für Ihre Umgebung enthält (z. B.
/etc/httpd/conf.d/rewrites/your-site.rules). -
Suchen Sie die Neuschreibungsregel, die für die Umleitung von kurzen Bild-URLs zum vollständigen
/content/...verantwortlich ist. Beispiel:RewriteRule (.*)/(_jcr_content)/(.*)\.(jpg|jpeg|png|svg|gif)$ /content/your-site$1/$2/$3.$4 [ R=302,L] -
Fügen Sie unmittelbar vor der betroffenen Regel eine Schutzbedingung hinzu, um zu verhindern, dass damit URLs übereinstimmen, die bereits mit
/content/beginnen:RewriteCond %{REQUEST_URI} !/content/ -
Die aktualisierten Regeln sollten wie folgt aussehen:
RewriteCond %{REQUEST_URI} !/content/RewriteRule (.*)/(_jcr_content)/(.*)\.(jpg|jpeg|png|svg|gif)$ /content/your-site$1/$2/$3.$4 [ R=302,L] -
Stellen Sie die aktualisierte Dispatcher-Konfiguration für alle betroffenen Dispatcher-Instanzen in Ihrer Staging-Umgebung bereit.
-
Überprüfen Sie die Fehlerbehebung, indem Sie die Site neu laden und bestätigen, dass Bildanforderungen eine
200 OKAntwort zurückgeben und dass die Bilder korrekt angezeigt werden.