Blockverweis-Spam

Das folgende Beispiel zeigt, wie Sie Schnelles Edge-Wörterbuch mit einem benutzerdefinierten VCL-Snippet zum Blockieren von Verweisen von Spam von Ihrer Adobe Commerce auf der Cloud-Infrastruktur-Site.

NOTE
Es wird empfohlen, benutzerdefinierte VCL-Konfigurationen zu einer Staging-Umgebung hinzuzufügen, in der Sie diese testen können, bevor Sie sie mit der Produktionsumgebung ausführen.

Voraussetzungen:

  • Ihre Umgebung muss für die Verwendung des Fastly CDN konfiguriert sein. Siehe Fastly Services konfigurieren.

  • Stellen Sie sicher, dass Sie die neueste Version des Fastly CDN-Moduls für Magento 2 ausführen. Siehe Fastly-Modul aktualisieren.

  • Überprüfen Sie die Umgebungskonfiguration für den Fastly-Dienst. Siehe Schnelles Zwischenspeichern überprüfen.

  • Sie müssen über Administratorberechtigungen verfügen, um auf die Staging- und Produktionsumgebungen zugreifen zu können.

  • Überprüfen Sie Ihre Site-Protokolle auf gefälschte Verweis-URLs und erstellen Sie eine Liste der Domänen, die blockiert werden sollen.

Erstellen einer Referrer-Blockierungsliste

Edge-Wörterbücher erstellen Schlüssel-Wert-Paare, auf die VCL-Funktionen während der VCL-Snippet-Verarbeitung zugreifen können. In diesem Beispiel erstellen Sie ein Edge-Wörterbuch, das die Liste der zu blockierenden Referrer-Websites bereitstellt.

  1. Anmelden an den Administrator.

  2. Klicks Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Vollständiger Seiten-Cache > Schnelle Konfiguration > Edge-Wörterbücher.

  4. Erstellen Sie den Wörterbuchcontainer:

    • Klicks Container hinzufügen.

    • Im Container Seite, geben Sie eine Wörterbuchnamereferrer_blocklist.

    • Auswählen Aktivieren nach der Änderung , um Ihre Änderungen an der Version der von Ihnen bearbeiteten Fastly-Dienstkonfiguration bereitzustellen.

    • Klicks Hochladen , um das Wörterbuch an Ihre Fastly-Service-Konfiguration anzuhängen.

  5. Fügen Sie die Liste der Domänennamen hinzu, die dem referrer_blocklist Wörterbuch:

    • Klicken Sie auf das Symbol Einstellungen für referrer_blocklist Wörterbuch.

    • Fügen Sie Schlüssel-Wert-Paare hinzu und speichern Sie sie im neuen Wörterbuch. In diesem Beispiel wird jeder Schlüssel ist der Domänenname einer Referrer-URL, die blockiert werden soll, und Wert is true.

      Schlechte Wörterbuchelemente für Referrer hinzufügen

    • Klicks Abbrechen , um zur Systemkonfigurationsseite zurückzukehren.

  6. Klicks Konfiguration speichern.

  7. Aktualisieren Sie den Cache gemäß der Benachrichtigung oben auf der Seite.

Weitere Informationen zu Edge-Wörterbüchern finden Sie unter Erstellen und Verwenden von Edge-Wörterbüchern und benutzerdefinierte VCL-Snippets in der Fastly-Dokumentation.

Erstellen eines benutzerdefinierten VCL-Snippets zum Blockieren von Werber-Spam

Der folgende benutzerdefinierte VCL-Codeausschnitt (JSON-Format) zeigt die Logik zum Überprüfen und Blockieren von Anforderungen. Das VCL-Snippet erfasst den Host einer Referrer-Website in einer Kopfzeile und vergleicht dann den Hostnamen mit der Liste der URLs in der referrer_blocklist Wörterbuch. Wenn der Hostname übereinstimmt, wird die Anfrage mit einem 403 Forbidden Fehler.

{
  "name": "block_bad_referrer",
  "dynamic": "0",
  "type": "recv",
  "priority": "5",
  "content": "set req.http.Referer-Host = regsub(req.http.Referer, \"^https?:\/\/?([^:\/s]+).*$\", \"\\1\"); if (table.lookup(referrer_blocklist, req.http.Referer-Host)) { error 403 \"Forbidden\"; }"
}

Bevor Sie ein auf diesem Beispiel basierendes Snippet erstellen, überprüfen Sie die Werte, um festzustellen, ob Sie Änderungen vornehmen müssen:

  • name — Name für das VCL-Snippet. In diesem Beispiel haben wir block_bad_referrer.

  • dynamic — Wert 0 zeigt eine reguläres Snippet , um für die Fastly-Konfiguration auf die versionierte VCL hochzuladen.

  • priority — Bestimmt, wann das VCL-Snippet ausgeführt wird. Die Priorität 5 , um diesen Codeausschnitt vor einem der standardmäßigen Magento VCL-Snippets (magentomodule_*) eine Priorität von 50 zugewiesen. Legen Sie die Priorität für jedes benutzerdefinierte Snippet höher oder niedriger als 50 fest, je nachdem, wann Ihr Snippet ausgeführt werden soll. Snippets mit niedrigeren Prioritätswerten werden zuerst ausgeführt.

  • type — Gibt einen Speicherort an, an dem das Snippet in die VCL-Version eingefügt werden soll. In diesem Beispiel ist das VCL-Snippet ein recv Snippet. Wenn das Snippet in die VCL-Version eingefügt wird, wird es der vcl_recv subroutinemäßig unter dem standardmäßigen Fastly VCL-Code und über allen Objekten.

  • content — Der Codeausschnitt von VCL, der in einer Zeile ohne Zeilenumbrüche ausgeführt werden soll.

Nachdem Sie den Code für Ihre Umgebung überprüft und aktualisiert haben, verwenden Sie eine der folgenden Methoden, um das benutzerdefinierte VCL-Snippet Ihrer Fastly Service-Konfiguration hinzuzufügen:

Hinzufügen des benutzerdefinierten VCL-Snippets

  1. Anmelden an den Administrator.

  2. Klicks Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Vollständiger Seiten-Cache > Schnelle Konfiguration > Benutzerdefinierte VCL-Snippets.

  4. Klicks Benutzerdefiniertes Snippet erstellen.

  5. Fügen Sie die VCL-Snippet-Werte hinzu:

    • Nameblock_bad_referrer

    • Typrecv

    • Priorität5

    • VCL Snippet-Inhalt —

      code language-conf
      set req.http.Referer-Host = regsub(req.http.Referer,
      "^https?://?([^:/\s]+).*$", "1");
      if (table.lookup(referrer_blocklist, req.http.Referer-Host)) {
        error 403 "Forbidden";
      }
      
  6. Klicks Erstellen.

    Erstellen eines benutzerdefinierten VCL-Codefragments für Referrer-Block

  7. Nachdem die Seite neu geladen wurde, klicken Sie auf VCL schnell hochladen im Schnelle Konfiguration Abschnitt.

  8. Nach Abschluss des Uploads aktualisieren Sie den Cache gemäß der Benachrichtigung oben auf der Seite.

Validiert die aktualisierte VCL-Version während des Upload-Prozesses schnell. Wenn die Validierung fehlschlägt, bearbeiten Sie Ihr benutzerdefiniertes VCL-Snippet, um Probleme zu beheben. Laden Sie dann die VCL erneut hoch.

NOTE
Anstatt benutzerdefinierte VCL-Snippets manuell hochzuladen, können Sie Snippets zum $MAGENTO_CLOUD_APP_DIR/var/vcl_snippets_custom -Verzeichnis in Ihrer Umgebung. Snippets in diesem Verzeichnis werden beim Klicken auf VCL auf Fastly hochladen im Commerce Admin. Siehe Automatisierte Bereitstellung benutzerdefinierter VCL-Snippets im Fastly CDN-Modul für die Magento 2-Dokumentation.

Ändern des benutzerdefinierten VCL-Snippets

  1. Anmelden an den Administrator.

  2. Klicks Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Vollständiger Seiten-Cache > Schnelle Konfiguration > Benutzerdefinierte VCL-Snippets.

    Verwalten benutzerdefinierter VCL-Snippets

  4. Im Aktion klicken Sie auf das Einstellungssymbol neben dem zu bearbeitenden Snippet.

  5. Nachdem die Seite neu geladen wurde, klicken Sie auf VCL schnell hochladen im Schnelle Konfiguration Abschnitt.

  6. Nach Abschluss des Uploads aktualisieren Sie den Cache gemäß der Benachrichtigung oben auf der Seite.

WARNING
Die Benutzerdefinierte VCL-Snippets UI-Option zeigt nur die Snippets an, die über den Adobe Commerce Admin hinzugefügt wurden. Wenn Sie Snippets mit der Fastly-API hinzufügen, verwenden Sie die API zu verwalten.

Löschen des benutzerdefinierten VCL-Snippets

  1. Anmelden an den Administrator.

  2. Klicks Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Vollständiger Seiten-Cache > Schnelle Konfiguration > Benutzerdefinierte VCL-Snippets.

    Verwalten benutzerdefinierter VCL-Snippets

  4. Im Aktion auf das Papierkorbsymbol neben dem zu löschenden Snippet klicken.

  5. Klicken Sie im nächsten modalen Fenster auf DELETE und aktivieren Sie eine neue Version.

WARNING
Die Benutzerdefinierte VCL-Snippets UI-Option zeigt nur die Snippets an, die über den Adobe Commerce Admin hinzugefügt wurden. Wenn Sie Snippets mit der Fastly-API hinzufügen, verwenden Sie die API zu verwalten.
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26