Sitemap- und Suchmaschinenroboter hinzufügen

Der Versuch, die Datei sitemap.xml zu generieren und in den Stammordner zu schreiben, führt zu folgendem Fehler:

Please make sure that "/" is writable by the web-server.

Mit Adobe Commerce in der Cloud-Infrastruktur können Sie nur in bestimmte Ordner schreiben, z. B. var, pub/media, pub/static oder app/etc. Wenn Sie die Datei "sitemap.xml"mithilfe des Admin-Bedienfelds generieren, müssen Sie den Pfad "/media/"angeben.

Sie müssen keine robots.txt-Datei generieren, da sie den Inhalt von robots.txt bei Bedarf generiert und in der Datenbank speichert. Sie können den Inhalt in Ihrem Browser mit dem Link <domain.your.project>/robots.txt oder <domain.your.project>/robots anzeigen.

Dies erfordert die ECE-Tools-Version 2002.0.12 und höher mit einer aktualisierten .magento.app.yaml -Datei. Ein Beispiel für diese Regeln finden Sie im magento-cloud-Repository.

So generieren Sie eine sitemap.xml -Datei in Version 2.2 und höher:

  1. Rufen Sie Admin auf.

  2. Klicken Sie im Menü Marketing im Abschnitt SEO & Suche auf Site Map .

  3. Klicken Sie in der Ansicht Sitemap auf Sitemap hinzufügen.

  4. Geben Sie in der Ansicht Neue Sitemap die folgenden Werte ein:

    • Dateiname:sitemap.xml
    • Pfad:/media/
  5. Klicken Sie auf Speichern und generieren. Die neue Sitemap wird im Raster Sitemap verfügbar.

  6. Klicken Sie auf den Pfad in der Spalte Link für Google .

Hinzufügen von Inhalt zur robots.txt Datei:

  1. Rufen Sie Admin auf.
  2. Klicken Sie im Menü Inhalt auf Konfiguration im Abschnitt Design .
  3. Klicken Sie in der Ansicht Design-Konfiguration in der Spalte Aktion auf Bearbeiten für die Website.
  4. Klicken Sie in der Ansicht Hauptwebsite auf Suchmaschinen-Roboter.
  5. Aktualisieren Sie das Feld Benutzerdefinierte Anweisung von robots.txt bearbeiten .
  6. Klicken Sie auf Konfiguration speichern.
  7. Überprüfen Sie die <domain.your.project>/robots.txt-Datei oder die <domain.your.project>/robots-URL in Ihrem Browser.
NOTE
Wenn die <domain.your.project>/robots.txt -Datei einen 404 error generiert, senden Sie ein Adobe Commerce Support-Ticket 🔗, um die Umleitung von /robots.txt auf /media/robots.txt zu entfernen.

Mit Fastly VCL-Snippet umschreiben

Wenn Sie unterschiedliche Domänen haben und separate Sitemaps benötigen, können Sie eine VCL erstellen, um zur entsprechenden Sitemap zu gelangen. Generieren Sie die Datei "sitemap.xml"im Admin-Bedienfeld wie oben beschrieben und erstellen Sie dann ein benutzerdefiniertes Fastly VCL-Snippet, um die Umleitung zu verwalten. Siehe Benutzerdefinierte schnelle VCL-Snippets.

NOTE
Sie können benutzerdefinierte VCL-Snippets von der Admin-Benutzeroberfläche oder über die Fastly-API hochladen. Siehe Beispiele und Tutorials für benutzerdefinierte VCL-Codebeispiele und -Tutorials.

Verwenden eines Fastly VCL-Snippets zur Umleitung

Erstellen Sie ein benutzerdefiniertes VCL-Snippet, um den Pfad für sitemap.xml mit den Schlüssel-Wert-Paaren type und content in /media/sitemap.xml umzuschreiben.

{
  "name": "sitemapxml_rewrite",
  "dynamic": "0",
  "type": "recv",
  "priority": "90",
  "content": "if ( req.url.path ~ \"^/?sitemap.xml$\" ) { set req.url = \"/media/sitemap.xml\"; }"
}

Das folgende Beispiel zeigt, wie der Pfad für robots.txt und sitemap.xml in /media/robots.txt und /media/sitemap.xml umgeschrieben wird

{
  "name": "sitemaprobots_rewrite",
  "dynamic": "0",
  "type": "recv",
  "priority": "90",
  "content": "if ( req.url.path ~ \"^/?sitemap.xml$\" ) { set req.url = \"/media/sitemap.xml\"; } else if (req.url.path ~ \"^/?robots.txt$\") { set req.url = \"/media/robots.txt\";}"
}

So verwenden Sie ein Fastly VCL-Snippet für eine bestimmte Domänenumleitung:

Erstellen Sie eine pub/media/domain_robots.txt -Datei, deren Domäne domain.com ist, und verwenden Sie das nächste VCL-Snippet:

{
  "name": "domain_robots",
  "dynamic": "0",
  "type": "recv",
  "priority": "90",
  "content": "if ( req.url.path == \"/robots.txt\" ) { if ( req.http.host ~ \"(domain).com$\" ) { set req.url = \"/media/\" re.group.1 \"_robots.txt\"; }}"
}

Das VCL-Snippet routet http://domain.com/robots.txt und zeigt die Datei pub/media/domain_robots.txt an.

Um eine Umleitung für robots.txt und sitemap.xml in einem einzelnen Snippet zu konfigurieren, erstellen Sie die Dateien pub/media/domain_robots.txt und pub/media/domain_sitemap.xml, wobei die Domäne domain.com ist, und verwenden Sie das nächste VCL-Snippet:

{
  "name": "domain_sitemaprobots",
  "dynamic": "0",
  "type": "recv",
  "priority": "90",
  "content": "if ( req.url.path == \"/robots.txt\" ) { if ( req.http.host ~ \"(domain).com$\" ) { set req.url = \"/media/\" re.group.1 \"_robots.txt\"; }} else if ( req.url.path == \"/sitemap.xml\" ) { if ( req.http.host ~ \"(domain).com$\" ) {  set req.url = \"/media/\" re.group.1 \"_sitemap.xml\"; }}"
}

In der Admin-Konfiguration sitemap müssen Sie den Speicherort der Datei mit pub/media/ anstelle von / angeben.

Konfigurieren der Indizierung nach Suchmaschine

Um die robots.txt -Anpassungen in der Produktion zu aktivieren, müssen Sie die Option Indizierung durch Suchmaschinen ist für<environment-name> in Ihren Projekteinstellungen aktivieren.

Verwenden Sie den Cloud Console, um Umgebungen zu verwalten

NOTE
  • Die Indizierung durch Suchmaschinen kann nur in der Produktion aktiviert werden, jedoch nicht in einer der niedrigeren Umgebungen.

  • Wenn Sie PWA Studio verwenden und nicht auf Ihre konfigurierte robots.txt -Datei zugreifen können, fügen Sie robots.txt zur Vorname-Zulassungsliste unter Stores > Konfiguration > Allgemein > Web > UPWARD-PWA-Konfiguration hinzu.

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