Ajout de robots de carte de site et de moteur de recherche

Une tentative de génération et d’écriture du fichier sitemap.xml dans le répertoire racine entraîne l’erreur suivante :

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

Avec Adobe Commerce sur l’infrastructure cloud, vous pouvez uniquement écrire dans des répertoires spécifiques, tels que var, pub/media, pub/static ou app/etc. Lorsque vous générez le fichier sitemap.xml à l’aide du panneau d’administration, vous devez spécifier le chemin d’accès /media/.

Vous n’avez pas à générer de fichier robots.txt, car il génère le contenu robots.txt à la demande et le stocke dans la base de données. Vous pouvez afficher le contenu dans votre navigateur à l’aide du lien <domain.your.project>/robots.txt ou <domain.your.project>/robots .

Pour ce faire, la version 2002.0.12 et ultérieure de l’outil CEE-Outils doit être mise à jour avec un fichier .magento.app.yaml mis à jour. Consultez un exemple de ces règles dans le référentiel magento-cloud.

Pour générer un fichier sitemap.xml dans la version 2.2 et ultérieure :

  1. Accédez à l’administrateur.

  2. Dans le menu Marketing, cliquez sur Carte du site dans la section Recherche et optimisation pour les moteurs de recherche.

  3. Dans la vue Carte du site, cliquez sur Ajouter un plan du site.

  4. Dans la vue Nouvelle carte du site, saisissez les valeurs suivantes :

    • Nom de fichier:sitemap.xml
    • Chemin:/media/
  5. Cliquez sur Enregistrer et générer. La nouvelle carte du site devient disponible dans la grille Carte du site.

  6. Cliquez sur le chemin d’accès dans la colonne Lien pour Google .

Pour ajouter du contenu au fichier robots.txt :

  1. Accédez à l’administrateur.
  2. Dans le menu Content, cliquez sur Configuration dans la section Design .
  3. Dans la vue Configuration de la conception, cliquez sur Modifier pour le site web dans la colonne Action.
  4. Dans la vue Main Website, cliquez sur Robots de moteur de recherche.
  5. Mettez à jour le champ Modifier l’instruction personnalisée de robots.txt .
  6. Cliquez sur Enregistrer la configuration.
  7. Vérifiez le fichier <domain.your.project>/robots.txt ou l’URL <domain.your.project>/robots dans votre navigateur.
NOTE
Si le fichier <domain.your.project>/robots.txt génère un 404 error, Envoyez un ticket d’assistance Adobe Commerce pour supprimer la redirection de /robots.txt vers /media/robots.txt.

Réécriture à l’aide d’un fragment de code VCL Fastly

Si vous avez des domaines différents et que vous avez besoin de mappages de site distincts, vous pouvez créer un VCL pour acheminer vers le plan de site approprié. Générez le fichier sitemap.xml dans le panneau d’administration comme décrit ci-dessus, puis créez un extrait de code VCL Fastly personnalisé pour gérer la redirection. Voir Fragments de code VCL personnalisés Fastly.

NOTE
Vous pouvez charger des fragments de code VCL personnalisés à partir de l’interface utilisateur d’administration ou à l’aide de l’API Fastly. Voir Exemples et tutoriels personnalisés de fragments de code VCL.

Utiliser un extrait de code VCL Fastly pour la redirection

Créez un fragment de code VCL personnalisé pour réécrire le chemin d’accès de sitemap.xml vers /media/sitemap.xml à l’aide des paires clé-valeur type et content.

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

L’exemple suivant montre comment réécrire le chemin d’accès pour robots.txt et sitemap.xml vers /media/robots.txt et /media/sitemap.xml

{
  "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\";}"
}

Pour utiliser un fragment de code VCL Fastly pour une redirection de domaine spécifique :

Créez un fichier pub/media/domain_robots.txt, où le domaine est domain.com, et utilisez le fragment de code VCL suivant :

{
  "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\"; }}"
}

Le fragment de code VCL achemine http://domain.com/robots.txt et présente le fichier pub/media/domain_robots.txt.

Pour configurer une redirection pour robots.txt et sitemap.xml dans un seul fragment de code, créez des fichiers pub/media/domain_robots.txt et pub/media/domain_sitemap.xml, où le domaine est domain.com et utilisez le fragment de code VCL suivant :

{
  "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\"; }}"
}

Dans la configuration admin sitemap, vous devez spécifier l’emplacement du fichier à l’aide de pub/media/ plutôt que de /.

Configuration de l’indexation par moteur de recherche

Pour activer les personnalisations de robots.txt en production, vous devez activer l’option L’indexation par les moteurs de recherche est activée pour<environment-name> dans les paramètres de votre projet.

Utilisez le Cloud Console pour gérer les environnements

NOTE
  • L’indexation par moteur de recherche ne peut être activée que dans Production, mais pas dans les environnements inférieurs.

  • Si vous utilisez PWA Studio et que vous ne parvenez pas à accéder à votre fichier robots.txt configuré, ajoutez robots.txt à la Liste autorisée de prénom sur Magasins > Configuration > Général > Web > Configuration du PWA UPWARD.

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