Umleitungen

Die Verwaltung von Weiterleitungsregeln ist eine gängige Voraussetzung für Webanwendungen, insbesondere in Fällen, in denen Sie eingehende Links, die sich im Laufe der Zeit geändert oder entfernt haben, nicht verlieren möchten.

Im Folgenden wird gezeigt, wie Sie mithilfe der Konfigurationsdatei "routes.yaml"Umleitungsregeln in Ihrer Adobe Commerce für Cloud-Infrastrukturprojekte verwalten. Wenn die in diesem Thema behandelten Umleitungsmethoden für Sie nicht funktionieren, können Sie die Zwischenspeicherung von Kopfzeilen verwenden, um dasselbe zu tun.

NOTE
Die folgenden Routenkonfigurationsbeispiele verwenden Routenvorlagen mit Platzhaltern. Der Platzhalter {default} stellt die für Ihre Site konfigurierte Standarddomäne dar. Wenn Ihr Projekt mehrere Domänen hat, verwenden Sie den Platzhalter {all} , um das Routing für die Standarddomäne und alle Aliase zu konfigurieren. Siehe Routen konfigurieren.

Updates für Pro-Umgebungen

WARNING
Einige Pro-Projekte benötigen ein Support-Ticket, um die Routenkonfiguration in der Datei routes.yaml und die Cron-Konfiguration in der Datei .magento.app.yaml zu aktualisieren. Adobe empfiehlt, die YAML-Konfigurationsdateien in einer Integrationsumgebung zu aktualisieren und zu testen und anschließend Änderungen in der Staging-Umgebung bereitzustellen. Wenn Ihre Änderungen nach der erneuten Bereitstellung nicht auf Staging-Sites angewendet werden und keine zugehörigen Fehlermeldungen im Protokoll vorhanden sind, senden Sie ein Adobe Commerce-Supportticket 🔗, in dem die versucht wurde, die Konfigurationsänderungen zu beschreiben. ​Schließen Sie alle aktualisierten YAML-Konfigurationsdateien in das Ticket ein.
WARNING
Bei Adobe Commerce in Cloud-Infrastrukturprojekten kann das Konfigurieren zahlreicher Nicht-Regex-Weiterleitungen und Rewrites in der Datei routes.yaml Leistungsprobleme verursachen. Wenn Ihre routes.yaml -Datei 32 KB oder größer ist, laden Sie Ihre Nicht-Regex-Umleitungen ab und schreiben Sie sie in Fastly um. Siehe Nicht-Regex-Umleitungen zu Fastly anstatt Nginx (Routen) laden im Adobe Commerce Help Center.

Umleitungen auf ganze Strecken

Mithilfe von Umleitungen über ganze Routen können Sie einfache Routen mithilfe der Datei routes.yaml definieren. Sie können beispielsweise wie folgt von einer Apex-Domäne zu einer www -Subdomäne umleiten:

http://{default}/:
    type: redirect
    to: http://www.{default}/

Teilroute-Umleitungen

In der Datei .magento/routes.yaml können Sie basierend auf der Musterübereinstimmung partielle Umleitungsregeln zu bestehenden Routen hinzufügen:

http://{default}/:
    redirects:
        expires: 1d
        paths:
          "/from": { to: "http://example.com/" }
          "/regexp/(.*)/matching": { to: "http://example.com/$1", regexp: true }

Teilumleitungen funktionieren mit jeder Route, einschließlich Routen, die direkt von der Anwendung bedient werden.

Zwei Schlüssel sind unter redirects verfügbar:

  • expires - Optional: Gibt die Zeit an, die zum Zwischenspeichern der Weiterleitung im Browser erforderlich ist. Beispiele für gültige Werte sind 3600s, 1d, 2w, 3m.

  • Pfade: Ein oder mehrere Schlüssel-Wert-Paare, die die Konfiguration für Regeln für Umleitungen mit partieller Route 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 die Optionen für die Verarbeitung der Umleitung angibt.

    Das value -Objekt weist die folgenden Eigenschaften auf:

    table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
    Eigenschaft Beschreibung
    to Erforderlich: ein teilweiser absoluter Pfad, eine URL mit Protokoll und Host oder ein Muster, das das Ziel für die Umleitungsregel angibt.
    regexp Optional, standardmäßig false. 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. Der Standardwert ist true. Dieser Wert wird nicht unterstützt, wenn regexp true ist.
    append_suffix Bestimmt, ob das Suffix mit der Umleitung übernommen wird. Der Standardwert ist true. Dieser Wert wird nicht unterstützt, wenn der regexp -Schlüssel true oder* ist, wenn der prefix -Schlüssel false ist.
    code Gibt den HTTP-Statuscode an. Gültige Statuscodes sind 301 (Dauerhaft verschoben), 302, 307 und 308. Der Standardwert ist 302.
    expires Optional: Gibt die Zeit an, die die Weiterleitung im Browser zwischengespeichert werden soll. Der Standardwert ist der expires -Wert, der direkt unter dem redirects -Schlüssel definiert ist. Auf dieser Ebene können Sie jedoch den Cache-Ablauf für einzelne Teilumleitungen optimieren.

Beispiele für Umleitungen auf Teilstrecken

Die folgenden Beispiele zeigen, wie Sie mithilfe verschiedener paths -Konfigurationsoptionen Teilroute-Umleitungen in der Datei routes.yaml angeben.

Abgleich von regulärem Ausdrucksmuster

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 für einen regulären Ausdruck und leitet übereinstimmende Anforderungen an https://example.com um. Beispielsweise wird eine Anforderung 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 Anforderungen, die dem Muster /from entsprechen, an den Pfad http://{default}/to um.

  • Leitet Anforderungen, die dem Muster /from/another/path entsprechen, auf https://{default}/to/another/path um.

  • Wenn Sie die Eigenschaft prefix in false ändern, werden Anforderungen, die mit dem Muster-Trigger /from übereinstimmen, zwar umgeleitet, Anforderungen, die mit dem Muster /from/another/path übereinstimmen, jedoch nicht.

Suffix-Musterabgleich

Verwenden Sie das folgende Format, um Umleitungsanfragen zu konfigurieren, die das Pfadsuffix aus der Anfrage an das Zielziel anhängen:

http://{default}/:
    type: upstream
    redirects:
    paths: "/from": { to: "https://{default}/to", append_suffix: false }

Diese Konfiguration funktioniert wie folgt:

  • Leitet Anforderungen, die dem Muster /from/path/suffix entsprechen, an den Pfad https://{default}/to um.

  • Wenn Sie die Eigenschaft append_suffix in true ändern, werden Anforderungen, die mit /from/path/suffix übereinstimmen, zum Pfad https://{default}/to/path/suffix umgeleitet.

Pfadspezifische Cache-Konfiguration

Verwenden Sie das folgende Format, um die Zeit zum Zwischenspeichern einer Weiterleitung von einem bestimmten Pfad 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 aus dem ersten Pfad (/from) werden einen Tag lang zwischengespeichert.

  • Umleitungen vom zweiten Pfad (/here) werden zwei Wochen lang zwischengespeichert.

recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26