Blockverweis-Spam

Das folgende Beispiel zeigt, wie Sie Fastly Edge Dictionary mit einem benutzerdefinierten VCL-Snippet konfigurieren, um Verweisspänen aus Ihrer Adobe Commerce auf der Cloud-Infrastruktur-Site zu blockieren.

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-Dienste konfigurieren.

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

  • Ü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. Melden Sie sich beibeim Administrator an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Erweitert > System.

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

  4. Erstellen Sie den Wörterbuchcontainer:

    • Klicken Sie auf Container hinzufügen.

    • Geben Sie auf der Seite Container einen Wörterbuchnamenreferrer_blocklist ein.

    • Wählen Sie Aktivieren nach der Änderung aus, um Ihre Änderungen für die Version der von Ihnen bearbeiteten Fastly-Service-Konfiguration bereitzustellen.

    • Klicken Sie auf Hochladen , um das Wörterbuch an Ihre Konfiguration des Fastly-Dienstes anzuhängen.

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

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

    • Fügen Sie Schlüssel-Wert-Paare hinzu und speichern Sie sie im neuen Wörterbuch. In diesem Beispiel ist jeder Schlüssel der Domänenname der zu blockierenden Referrer-URL und der Wert ist true.

      Schlechte Wörterbuchelemente des Referrers hinzufügen

    • Klicken Sie auf Abbrechen , um zur Systemkonfigurationsseite zurückzukehren.

  6. Klicken Sie auf 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 benutzerdefinierten VCL-Snippets in der Schnelldokumentation.

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 im Wörterbuch referrer_blocklist. Wenn der Hostname übereinstimmt, wird die Anfrage mit einem 403 Forbidden -Fehler blockiert.

{
  "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. Für dieses Beispiel haben wir block_bad_referrer verwendet.

  • dynamic - Der Wert 0 zeigt ein reguläres Snippet an, das für die schnelle Konfiguration in das versionierte VCL hochgeladen werden soll.

  • priority - Bestimmt, wann das VCL-Snippet ausgeführt wird. Die Priorität lautet "5", um diesen Codeausschnitt auszuführen, bevor einem der standardmäßigen Magento VCL-Snippets (magentomodule_*) eine Priorität von 50 zugewiesen wird. 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 UnterRoutine vcl_recv hinzugefügt, unter dem standardmäßigen Fastly VCL-Code und über allen Objekten.

  • content - Das Snippet des VCL-Codes, 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. Melden Sie sich beibeim Administrator an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Sie Vollständiger Seiten-Cache > Fastly Configuration > Custom VCL Snippets.

  4. Klicken Sie auf 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. Klicken Sie auf Erstellen.

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

  7. Klicken Sie nach dem Neuladen der Seite im Abschnitt Schnelle Konfiguration auf VCL auf Fastly hochladen .

  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 in Ihrer Umgebung Snippets zum Ordner "$MAGENTO_CLOUD_APP_DIR/var/vcl_snippets_custom"hinzufügen. Snippets in diesem Verzeichnis werden automatisch hochgeladen, wenn Sie in Commerce Admin auf VCL auf Fastly hochladen klicken. Informationen zu Magento 2 finden Sie unter Bereitstellung automatisierter benutzerdefinierter VCL-Snippets im Fastly CDN-Modul.

Ändern des benutzerdefinierten VCL-Snippets

  1. Melden Sie sich beibeim Administrator an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Sie Vollständiger Seiten-Cache > Fastly Configuration > Custom VCL Snippets.

    Verwalten benutzerdefinierter VCL-Snippets

  4. Klicken Sie in der Spalte Aktion auf das Einstellungssymbol neben dem zu bearbeitenden Snippet.

  5. Klicken Sie nach dem Neuladen der Seite im Abschnitt Schnelle Konfiguration auf VCL auf Fastly hochladen .

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

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

Löschen des benutzerdefinierten VCL-Snippets

  1. Melden Sie sich beibeim Administrator an.

  2. Klicken Sie auf Stores > Einstellungen > Konfiguration > Erweitert > System.

  3. Erweitern Sie Vollständiger Seiten-Cache > Fastly Configuration > Custom VCL Snippets.

    Verwalten benutzerdefinierter VCL-Snippets

  4. Klicken Sie in der Spalte Aktion auf das Papierkorbsymbol neben dem zu löschenden Ausschnitt.

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

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