Redirects
- Themen:
- Cloud
Erstellt für:
- Admin
- Entwickler
Die Verwaltung von Weiterleitungsregeln ist eine gängige Anforderung für Web-Anwendungen, insbesondere in Fällen, in denen Sie eingehende Links, die sich geändert oder im Laufe der Zeit entfernt haben, nicht verlieren möchten.
Im Folgenden wird gezeigt, wie Sie mit der routes.yaml
-Konfigurationsdatei Umleitungsregeln für Ihre Adobe Commerce in Cloud-Infrastrukturprojekten verwalten. Wenn die in diesem Thema beschriebenen Weiterleitungsmethoden bei Ihnen nicht funktionieren, können Sie Caching-Kopfzeilen verwenden, um dasselbe zu tun.
{default}
Platzhalter stellt die für Ihre Site konfigurierte Standard-Domain dar. Wenn Ihr Projekt über mehrere Domains verfügt, verwenden Sie den {all}
Platzhalter, um das Routing für die Standard-Domain und alle Aliase zu konfigurieren. Siehe Konfigurieren von Routen.Updates für Pro-Umgebungen
routes.yaml
-Datei und die Cron-Konfiguration in der .magento.app.yaml
-Datei zu aktualisieren. Adobe empfiehlt, YAML-Konfigurationsdateien in einer Integrationsumgebung zu aktualisieren und zu testen und dann Änderungen in der Staging-Umgebung bereitzustellen. Wenn Ihre Änderungen nach der erneuten Bereitstellung nicht auf Staging-Sites angewendet werden und es keine entsprechenden Fehlermeldungen im Protokoll gibt, Sie MÜSSEN ein Adobe Commerce-Support-Ticket, das die versuchten Konfigurationsänderungen beschreibt. Schließen Sie alle aktualisierten YAML-Konfigurationsdateien in das Ticket ein.routes.yaml
Leistungsprobleme verursachen. Wenn Ihre routes.yaml
-Datei 32 KB oder größer ist, leiten Sie Ihre Nicht-Regex-Dateien weiter und schreiben sie auf Fastly um. Siehe Nicht-Regex-Umleitungen an Fastly statt Nginx (Routen)Adobe Commerce-Hilfezentrum.Umleitungen für ganze Routen
Mithilfe von Umleitungen für ganze Routen können Sie einfache Routen mithilfe der routes.yaml
definieren. Sie können beispielsweise wie folgt von einer Apex-Domain zu einer www
-Subdomain umleiten:
http://{default}/:
type: redirect
to: http://www.{default}/
Teilweise weiterzuleitende Routen
In der .magento/routes.yaml
-Datei können Sie basierend auf Mustervergleich partielle Umleitungsregeln zu vorhandenen Routen hinzufügen:
http://{default}/:
redirects:
expires: 1d
paths:
"/from": { to: "http://example.com/" }
"/regexp/(.*)/matching": { to: "http://example.com/$1", regexp: true }
Teilweise Weiterleitungen funktionieren auf allen Routen, einschließlich Routen, die direkt von der Anwendung bedient werden.
Zwei Schlüssel sind unter redirects
verfügbar:
-
expires - Optional, gibt die Zeitdauer an, für die die Umleitung im Browser zwischengespeichert wird. Beispiele für gültige Werte sind
3600s
,1d
,2w
und3m
. -
Pfade - Ein oder mehrere Schlüssel-Wert-Paare, die die Konfiguration für Teilumleitungsregeln angeben.
Für jede Umleitungsregel ist der Schlüssel ein Ausdruck zum Filtern von Anfragepfaden für die Umleitung. Der Wert ist ein -Objekt, das das Zielziel für die Umleitung und Optionen für die Verarbeitung der Umleitung angibt.
Das value-Objekt hat die folgenden Eigenschaften:
EigenschaftBeschreibungto
Erforderlich, ein partieller absoluter Pfad, eine URL mit Protokoll und Host oder ein Muster, das das Zielziel für die Umleitungsregel angibt.regexp
Optional, standardmäßigfalse
. Gibt an, ob der Pfadschlüssel als regulärer PCRE-Ausdruck interpretiert werden soll.prefix
Gibt an, ob die Umleitung sowohl für den Pfad als auch für alle untergeordneten Elemente oder nur für den Pfad selbst gilt. Die Standardeinstellung isttrue
. Dieser Wert wird nicht unterstützt, wennregexp
true
ist.append_suffix
Bestimmt, ob das Suffix mit der Umleitung übernommen wird. Die Standardeinstellung isttrue
. Dieser Wert wird nicht unterstützt, wenn derregexp
Schlüsseltrue
oder* ist, wenn derprefix
Schlüsselfalse
ist.code
Gibt den HTTP-Status-Code an. Gültige Status-Codes sind301
(dauerhaft verschoben,302
,307
und308
. Die Standardeinstellung ist302
.expires
Optional, gibt die Zeitdauer an, während der die Umleitung im Browser zwischengespeichert wird. Standardmäßig wird derexpires
Wert verwendet, der direkt unter demredirects
definiert wird. Auf dieser Ebene können Sie jedoch die Gültigkeitsdauer des Caches für einzelne partielle Weiterleitungen optimieren.
Beispiele für partielle Routen-Umleitungen
Die folgenden Beispiele zeigen, wie Sie mithilfe verschiedener paths
-Konfigurationsoptionen partielle Weiterleitungen in der routes.yaml
-Datei angeben.
Mustervergleich für reguläre Ausdrücke
Verwenden Sie das folgende Format, um Umleitungsanfragen basierend auf einem regulären Ausdruck zu konfigurieren.
http://{default}/:
type: upstream
redirects:
paths:
"/regexp/(.*)/match": { to: "http://example.com/$1", regexp: true }
Diese Konfiguration filtert Anfragepfade anhand eines regulären Ausdrucks und leitet übereinstimmende Anfragen an https://example.com
weiter. Beispielsweise wird eine Anfrage an https://example.com/regexp/a/b/c/match
an https://example.com/a/b/c
umgeleitet.
Präfixmusterübereinstimmung
Verwenden Sie das folgende Format, um Umleitungsanfragen für Pfade zu konfigurieren, die mit einem angegebenen Präfixmuster beginnen.
http://{default}/:
type: upstream
redirects:
paths:
"/from": { to: "https://{default}/to", prefix: true }
Diese Konfiguration funktioniert wie folgt:
-
Leitet Anfragen, die dem
/from
Muster entsprechen, an denhttp://{default}/to
weiter. -
Leitet Anfragen, die dem
/from/another/path
Muster entsprechen, anhttps://{default}/to/another/path
weiter. -
Wenn Sie die
prefix
-Eigenschaft infalse
ändern, werden Anfragen, die mit dem/from
Muster-Trigger übereinstimmen, umgeleitet, Anfragen, die mit dem/from/another/path
-Muster übereinstimmen, jedoch nicht.
Suffix-Mustervergleich
Verwenden Sie das folgende Format, um Umleitungsanfragen zu konfigurieren, die das Pfadsuffix von der Anfrage an das Ziel anhängen:
http://{default}/:
type: upstream
redirects:
paths: "/from": { to: "https://{default}/to", append_suffix: false }
Diese Konfiguration funktioniert wie folgt:
-
Leitet Anfragen, die dem
/from/path/suffix
Muster entsprechen, an denhttps://{default}/to
weiter. -
Wenn Sie die
append_suffix
Eigenschaft intrue
ändern, werden Anfragen, die mit übereinstimmen,/from/path/suffix
an den Pfadhttps://{default}/to/path/suffix
.
Pfadspezifische Cache-Konfiguration
Verwenden Sie das folgende Format, um die Zeit zum Zwischenspeichern einer Umleitung von einem bestimmten Pfad aus anzupassen:
http://{default}/:
type: upstream
redirects:
expires: 1d
paths:
"/from": { to: "https://example.com/" }
"/here": { to: "https://example.com/there", expires: "2w" }
Diese Konfiguration funktioniert wie folgt:
-
Umleitungen vom ersten Pfad (
/from
) werden einen Tag lang zwischengespeichert. -
Umleitungen vom zweiten Pfad (
/here
) werden zwei Wochen lang zwischengespeichert.