Schnelle Fehlerbehebung

Verwenden Sie die folgenden Informationen, um das Fastly CDN-Modul für Magento 2 in Ihrer Adobe Commerce in Cloud-Infrastruktur-Projektumgebungen zu beheben und zu verwalten. Sie können beispielsweise die Werte der Antwortheader und das Cache-Verhalten untersuchen, um Probleme mit dem schnellen Service und der Leistung zu beheben.

In Pro-Produktions- und Staging-Umgebungen können Sie New Relic-Protokolle verwenden, um CDN- und WAF-Protokolldaten schnell anzuzeigen und zu analysieren, um Fehler und Leistungsprobleme zu beheben.

NOTE
Informationen zum Einrichten und Konfigurieren von Fastly finden Sie unter Fastly einrichten.

Fastly Service ID suchen

Sie benötigen die Fastly-Dienst-ID, um eine schnelle Konfiguration über den Administrator durchzuführen oder um Fastly-API-Anfragen für erweiterte schnelle Konfiguration und Fehlerbehebung zu senden.

Wenn Fastly in Ihrer Projektumgebung aktiviert ist, können Sie die Dienst-ID vom Admin abrufen. Siehe Schnelle Anmeldeinformationen abrufen.

Entwickler und fortgeschrittene VCL-Benutzer können benutzerdefinierte VCL verwenden, um die Dienst-ID mit der Fastly-Variablen req.service_id abzurufen. Sie können beispielsweise die req.service_id zur benutzerdefinierten Protokollierungsrichtlinie in Ihrer VCL hinzufügen, um den Dienst-ID-Wert zu erfassen:

log {"syslog"} req.service_id {" my_logging_endpoint_name :: "}

Sie können denselben VCL für Produktions- und Staging-Umgebungen verwenden. Siehe Konfigurieren von vcl_log.

Probleme mit der Site-Leistung, -Bereinigung und -Cache

Verwenden Sie die folgende Liste, um Probleme im Zusammenhang mit der Konfiguration des Fastly-Dienstes für Ihre Adobe Commerce in der Cloud-Infrastruktur-Umgebung zu identifizieren und zu beheben.

  • Menü "Store"wird nicht angezeigt oder funktioniert nicht - Möglicherweise verwenden Sie einen Link oder einen temporären Link direkt zum Herkunftsserver, anstatt die Live-Site-URL zu verwenden, oder Sie haben -H "host:URL" in einem cURL-Befehl verwendet. Wenn Sie die Option Schnell zum Herkunftsserver umgehen, funktioniert das Hauptmenü nicht und falsche Kopfzeilen werden angezeigt, die das Zwischenspeichern auf der Browserseite zulassen.

  • Obere Navigation funktioniert nicht - Die obere Navigation beruht auf der Verarbeitung von Edge Side Includes (ESI), die beim Hochladen der standardmäßigen Magento Fastly VCL-Snippets aktiviert wird. Wenn die Navigation nicht funktioniert, lädt den Fastly VCL hoch und überprüft die Site erneut.

  • Geolocation/GeoIP funktioniert nicht - Die standardmäßigen Magento Fastly VCL-Snippets hängen den Ländercode an die URL an. Wenn der Ländercode nicht funktioniert, lädt den Fastly VCL hoch und überprüft die Site erneut.

  • Seiten werden nicht zwischengespeichert—Standardmäßig werden keine Seiten mit der Kopfzeile Set-Cookies im Cache zwischengespeichert. Adobe Commerce setzt Cookies auch auf zwischenspeicherbaren Seiten (TTL > 0). Die standardmäßige Magento Fastly VCL entfernt diese Cookies auf zwischenspeicherbaren Seiten. Wenn Seiten nicht zwischengespeichert werden, lädt den Fastly VCL hoch und überprüft die Site erneut.

    Dieses Problem kann auch auftreten, wenn ein Seitenblock in einer Vorlage als unerreichbar markiert ist. In diesem Fall wird das Problem höchstwahrscheinlich durch ein Drittanbietermodul oder eine Erweiterung verursacht, die die Adobe Commerce-Kopfzeilen blockiert oder entfernt. Um das Problem zu beheben, lesen Sie X-Cache enthält nur MISS, keinen HIT.

  • Bereinigungsanfragen schlagen fehl—Beim Senden einer Bereinigungsanforderung wird schnell der folgende Fehler zurückgegeben:

    code language-text
    The purge request was not processed successfully.
    

    Dieses Problem kann durch eines der folgenden Probleme verursacht werden:

    • Ungültige Fastly-Anmeldeinformationen in der Fastly-Dienstkonfiguration für Adobe Commerce in der Cloud-Infrastruktur-Projektumgebung
    • Ungültiger Code in einem benutzerdefinierten VCL-Snippet

    Informationen zum Beheben des Problems finden Sie unter Fehler beim Bereinigen des Fastly-Cache in Cloud im Adobe Commerce Help Center.

503 Fehler von Fastly

Wenn Fastly 503-Timeout-Fehler zurückgibt, überprüfen Sie die Fehlerprotokolle und die Fehlerseite 503 , um die Grundursache zu identifizieren.

NOTE
Tritt beim Ausführen von Massenvorgängen die Zeitüberschreitung ein, können Sie die Zeitüberschreitung für den Administrator 🔗 um verlängern.

Wenn Sie einen 503-Fehler erhalten, überprüfen Sie das Fehlerprotokoll für die Produktions- oder Staging-Umgebung und das php-Zugriffsprotokoll, um das Problem zu beheben.

Überprüfen der Fehlerprotokolle:

  • Fehlerprotokoll

    code language-text
    /var/log/platform/<project-ID>/error.log
    

    Dieses Protokoll enthält alle Fehler der Anwendung oder der PHP-Engine, z. B. memory_limit- oder max_execution_time exceeded-Fehler. Wenn Sie keine Fastly-bezogenen Fehler finden, überprüfen Sie das PHP-Zugriffsprotokoll.

  • PHP-Zugriffsprotokoll

    code language-text
    /var/log/platform/<project-ID>/php.access.log
    

    Suchen Sie im Protokoll nach HTTP-200-Antworten nach der URL, die den 503-Fehler zurückgegeben hat. Wenn Sie die Antwort "200"finden, bedeutet dies, dass Adobe Commerce die Seite ohne Fehler zurückgegeben hat. Dies weist darauf hin, dass das Problem möglicherweise nach dem Intervall aufgetreten ist, das den in der Fastly-Dienstkonfiguration festgelegten first_byte_timeout -Wert überschreitet.

Wenn ein 503-Fehler auftritt, gibt Fastly den Grund auf der Fehler- und Wartungsseite zurück. Möglicherweise können Sie den Grund nicht sehen, wenn Sie Code für eine benutzerdefinierte Antwortseite hinzugefügt haben. Um den Grund-Code auf der Standardfehlerseite anzuzeigen, können Sie den HTML-Code für die benutzerdefinierte Fehlerseite entfernen.

So überprüfen Sie die Fehlerseite "Fastly 503":

  1. Melden Sie sich beibeim Administrator an.

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

  3. Erweitern Sie im rechten Bereich den Eintrag Vollständiger Seiten-Cache.

  4. Erweitern Sie im Abschnitt Schnelle Konfiguration den Eintrag Benutzerdefinierte synthetische Seiten , wie in der folgenden Abbildung dargestellt.

    Benutzerdefinierte Fehlerseite 503

  5. Klicken Sie auf HTML festlegen.

  6. Entfernen Sie den benutzerspezifischen Code. Sie können sie in einem Textprogramm speichern, um sie später erneut hinzuzufügen.

  7. Klicken Sie auf Hochladen , um Ihre Aktualisierungen schnell zu senden.

  8. Klicken Sie oben auf der Seite auf Konfiguration speichern .

  9. Öffnen Sie die URL, die den 503-Fehler verursacht hat, erneut. Gibt schnell eine Fehlerseite mit dem Grund zurück, wie im folgenden Beispiel gezeigt.

    Fastly error

Apex und Subdomänen, die bereits mit einem Fastly-Konto verknüpft sind

Wenn die Apex-Domäne und die Subdomänen für Ihr Adobe Commerce on Cloud-Infrastrukturprojekt bereits mit einem vorhandenen Fastly-Konto mit einer zugewiesenen Service-ID verknüpft sind, können Sie erst starten, nachdem Sie Ihre Schnelle Konfiguration aktualisiert haben:

Überprüfen oder Debuggen von Fastly-Diensten

Sie können Leistungs- oder Zwischenspeicherungsprobleme für eine Adobe Commerce auf der Cloud-Infrastruktur-Site beheben, indem Sie die Site-URLs testen und die in der Antwort zurückgegebenen Kopfzeilenwerte untersuchen.

Schnellere Überprüfung der Live-Site

Verwenden Sie die Fastly-API, um die Antwortheader Fastly-Magento-VCL-Uploaded und X-Cache zu überprüfen, die von Ihrer Live-Site zurückgegeben werden.

Schnelle API-Anfragen werden über die Fastly-Erweiterung übergeben, um eine Antwort von Ihren Ursprungs-Servern zu erhalten. Wenn die Antwort falsche Header zurückgibt, testen Sie die Herkunftsserver direkt.

Überprüfen der Antwortheader:

  1. Verwenden Sie in einem Terminal den folgenden curl-Befehl, um Ihre Live-Site-URL zu testen:

    code language-bash
    curl https://<live URL> -vo /dev/null -H Fastly-Debug:1
    

    Wenn Sie keine statische Route festgelegt oder die DNS-Konfiguration für die Domänen auf Ihrer Live-Site abgeschlossen haben, verwenden Sie das --resolve -Flag, das die DNS-Namensauflösung umgeht.

    code language-bash
    curl -svo /dev/null --resolve '<your_hostname>:443:<IP-address-of-cache-node>' <https-URL>
    
    note note
    NOTE
    Um diesen Befehl mit der Option --resolve verwenden zu können, muss TLS mit Fastly über ein SSL-/TLS-Zertifikat aktiviert sein und die IP-Adresse des Cache-Knotens suchen.
  2. Überprüfen Sie in der Antwort die Kopfzeilen , um sicherzustellen, dass Fastly funktioniert. Folgende eindeutige Header sollten in der Antwort angezeigt werden:

    code language-http
    < Fastly-Magento-VCL-Uploaded: yes
    < X-Cache: HIT, MISS
    

Wenn die Header nicht über die richtigen Werte verfügen, finden Sie weitere Informationen unter:

Umgehen des schnellen Cache, um Adobe Commerce-Sites zu überprüfen

Wenn der Fastly-Dienst falsche Header zurückgibt, können Sie einen VCL-Snippet erstellen, mit dem Sie Anforderungen senden können, die den Fastly-Cache umgehen. Siehe Schnellen Cache umgehen.

Nachdem Sie das VCL-Snippet hinzugefügt haben, verwenden Sie cURL-Befehle, um Anforderungen von der angegebenen IP-Adresse an den Ausgangsserver zu senden. Überprüfen Sie dann die Antworten auf Fehler.

Überprüfen der Cache-HIT- und MISS-Antwortheader

Stellen Sie sicher, dass die zurückgegebene Antwort die folgenden Informationen enthält:

  • Umfasst die Kopfzeile X-Magento-Tags

  • Der Wert der Kopfzeile Fastly-Module-Enabled ist entweder Yes oder die Versionsnummer des Fastly for CDN Magento 2-Moduls, das in der Projektumgebung installiert ist

  • Cache-Control: max-age ist größer als 0

  • Einstellung Pragma ist cache

Der folgende Ausschnitt aus der Ausgabe des cURL-Befehls zeigt die richtigen Werte für die Header Pragma, X-Magento-Tags und Fastly-Module-Enabled:

* STATE: INIT => CONNECT handle 0x600057800; line 1402 (connection #-5000)
* Rebuilt URL to: https://www.mymagento.biz.c.sv7gVom4qrpek.ent.magento.cloud/
* Added connection 0. The cache now contains 1 members
* Trying 192.0.2.31...
* STATE: CONNECT => WAITCONNECT handle 0x600057800; line 1455 (connection #0)

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Connected to www.mymagento.biz.c.sv7gVom4qrpek.ent.magento.cloud (54.229.163.31) port 443 (#0)

* STATE: WAITCONNECT => SENDPROTOCONNECT handle 0x600057800; line 1562 (connection #0)
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* ALPN, offering h2

... portion omitted for brevity ...

< Set-Cookie: mage-messages=%5B%5D; expires=Wed, 22-Nov-2017 17:39:58 GMT; Max-Age=31536000; path=/
< Pragma: cache
< Expires: Wed, 23 Nov 2016 17:39:56 GMT
< Cache-Control: max-age=86400, public, s-maxage=86400, stale-if-error=5, stale-while-revalidate=5
< X-Magento-Tags: cb_welcome_popup store cb cb_store_info_mobile cb_header_promotional_bar cb_store_info cb_discount-promo-bar cpg_2 cb_83 cb_81 cb_84 cb_85 cb_86 cb_87 cb_88 cb_89 p5646 catalog_product p5915 p6040 p6197 p6227 p7095 p6109 p6122 p6331 p7592 p7651 p7690
< Fastly-Module-Enabled: yes
< Strict-Transport-Security: max-age=31536000
    < Content-Security-Policy: upgrade-insecure-requests
    < X-Content-Type-Options: nosniff
    < X-XSS-Protection: 1; mode=block
    < X-Frame-Options: SAMEORIGIN
    < X-Platform-Server: i-dff64b52
    <
    * STATE: PERFORM => DONE handle 0x600057800; line 1955 (connection #0)
    * multi_done
      0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
    * Connection #0 to host www.mymagento.biz.c.sv7gVom4qrpek.ent.magento.cloud left intact
NOTE
Detaillierte Informationen zu Treffern und Fehlern finden Sie unter Grundlegendes zu Cache-HIT- und MISS-Kopfzeilen mit abgeschirmten Diensten in der Schnelldokumentation.

Beheben von Fehlern in Antwortheadern

Dieser Abschnitt enthält Vorschläge zur Behebung von Fehlern, die beim Überprüfen von Antwortheadern mit der Fastly-API zurückgegeben werden.

Fastly-Modul ist nicht aktiviert

Wenn das Fastly-Modul nicht aktiviert ist (Fastly-Module-Enabled: no) oder die Kopfzeile fehlt, verwenden Sie SSH, um sich inbeim Projekt anzumelden. Führen Sie dann den folgenden Befehl aus, um den Modulstatus zu überprüfen.

php bin/magento module:status Fastly_Cdn

Verwenden Sie je nach zurückgegebenem Status die folgenden Anweisungen, um die Konfiguration Fastly zu aktualisieren.

  • Module does not exist—Wenn das Modul nicht vorhanden ist, installieren und konfigurieren Sie 🔗 das Fastly CDN Module für Magento 2 in einer Integrationsverzweigung. Nach Abschluss der Installation aktivieren und konfigurieren Sie das Modul. Siehe Schnelles Einrichten.

  • Module is disabled—Wenn das Fastly-Modul deaktiviert ist, aktualisieren Sie die Umgebungskonfiguration in einer integration -Verzweigung in Ihrer lokalen Umgebung, um sie zu aktivieren. Übertragen Sie dann die Änderungen auf Staging und Produktion. Siehe Verwalten von Erweiterungen.

    Wenn Sie Konfigurationsverwaltung verwenden, überprüfen Sie den Status des Fastly CDN-Moduls in der Konfigurationsdatei app/etc/config.php , bevor Sie Änderungen an die Produktions- oder Staging-Umgebung senden.

    Wenn das Modul in der Datei config.php nicht aktiviert ist (Fastly_CDN => 0), löschen Sie die Datei und führen Sie den folgenden Befehl aus, um config.php mit den neuesten Konfigurationseinstellungen zu aktualisieren.

    code language-bash
    bin/magento magento-cloud:scd-dump
    

Fast VCL wurde nicht hochgeladen

Wenn die Fastly VCL nicht hochgeladen wurde (Fastly-Magento-VCL-Uploaded: false), verwenden Sie die Option VCL hochladen im Admin, um sie hochzuladen. Siehe Fastly VCL-Snippets hochladen.

X-Cache enthält nur MISS, keinen HIT

Wenn die Kopfzeile X-Cache HIT (HIT, HIT oder HIT, MISS) enthält, deutet dies darauf hin, dass der zwischengespeicherte Inhalt schnell erfolgreich zurückgegeben wird.

Wenn die Kopfzeile X-Cache den Wert MISS, MISS aufweist und nicht den Wert HIT enthält, führen Sie den Befehl curl erneut aus, um sicherzustellen, dass die Seite nicht vor Kurzem aus dem Cache gelöscht wurde.

Wenn Sie dasselbe Ergebnis erhalten, verwenden Sie die curl Befehle und überprüfen Sie die Antwortheader:

  • Pragma ist cache
  • X-Magento-Tags vorhanden
  • Cache-Control: max-age ist größer als 0

Wenn das Problem weiterhin besteht, werden diese Kopfzeilen wahrscheinlich von einer anderen Erweiterung zurückgesetzt. Wiederholen Sie das folgende Verfahren in der Staging-Umgebung, indem Sie alle Erweiterungen deaktivieren und jede einzelne erneut aktivieren, um zu bestimmen, welche Erweiterung die Kopfzeilen zurücksetzt. Nachdem Sie die Erweiterung identifiziert haben, die das Problem verursacht hat, müssen Sie sie in der Produktionsumgebung deaktivieren.

So identifizieren Sie eine Erweiterung, die Antwortheader zurücksetzt:

  1. Melden Sie sich beibeim Administrator an.

  2. Navigieren Sie zu Stores > Einstellungen > Konfiguration > Erweitert > Erweitert.

  3. Suchen Sie im Abschnitt Modulausgabe deaktivieren im rechten Bereich nach all Ihren Erweiterungen und deaktivieren Sie sie.

  4. Klicken Sie auf Konfiguration speichern.

  5. Klicken Sie auf "System"> "Tools"> "Cache-Verwaltung".

  6. Klicken Sie auf Magento-Cache leeren.

  7. Führen Sie die folgenden Schritte für jede Erweiterung aus, die möglicherweise Probleme mit Fastly-Kopfzeilen verursacht:

    • Aktivieren Sie jeweils eine Erweiterung, speichern Sie die Konfiguration und leeren Sie den Adobe Commerce-Cache.

    • Führen Sie die curl Befehle aus, um die Antwortheader zu überprüfen.

    Wiederholen Sie diesen Vorgang für jede Erweiterung. Wenn die Header für schnelle Antworten nicht mehr angezeigt werden, haben Sie die Erweiterung identifiziert, die Probleme mit Fastly verursacht.

Nachdem Sie die Erweiterung identifiziert haben, die Fastly-Header zurücksetzt, wenden Sie sich für weitere Unterstützung an den Entwickler der Erweiterung. Wir können keine Fehlerbehebungen oder Aktualisierungen bereitstellen, damit Erweiterungen von Drittanbietern mit dem Fastly-Caching funktionieren.

Schnelle Rollback-Konfiguration

Wenn benutzerspezifische VCL-Snippet-Aktualisierungen oder andere Fastly-Konfigurationsänderungen dazu führen, dass eine Adobe Commerce auf der Cloud-Infrastruktur-Site Fehler beschädigt oder zurückgibt, verwenden Sie den Befehl "Fastly API activate", um zu einer früheren VCL-Version zurückzukehren. Sie können die VCL-Version nicht vom Administrator zurücksetzen.

Zurücksetzen der VCL-Version:

  1. Um eine Liste der verfügbaren VCL-Versionen für einen Dienst zu erhalten, führen Sie den folgenden Befehl aus

    code language-bash
    curl -H "Fastly-Key: <FASTLY_API_TOKEN>" -H "Accept: application/json" https://api.fastly.com/service/<FASTLY_SERVICE_ID>/version
    
  2. Führen Sie den folgenden Befehl aus, um die aktive VCL-Version in eine angegebene Version zu ändern.

    code language-bash
    curl -H "Fastly-Key: <FASTLY_API_TOKEN>" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json" -X PUT https://api.fastly.com/service/<FASTLY_SERVICE_ID>/version/<VERSION_ID>/activate
    

Weitere Informationen zur Verwendung der Fastly-API zum Überprüfen und Verwalten von VCL finden Sie unter Verwalten von VCL mithilfe der API.

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