Web クローラーを設定するためのベストプラクティス

この記事では、設定やセキュリティなど、Adobe Commerceで robots.txt ファイルや sitemap.xml ファイルを使用するためのベストプラクティスを説明します。 これらのファイルは、web クローラー(通常は検索エンジンロボット)が web サイト上のページをクロールする方法を指示します。 これらのファイルを設定すると、サイトのパフォーマンスと検索エンジンの最適化を向上させることができます。

NOTE
これらのベストプラクティスは、ネイティブのAdobe Commerce ストアフロントを使用するプロジェクトにのみ当てはまります。 他のストアフロントソリューション(Adobe Experience Manager、ヘッドレスなど)を使用するAdobe Commerce プロジェクトには適用されません。

影響を受ける製品とバージョン

サポートされているすべてのバージョン:

  • クラウドインフラストラクチャー上のAdobe Commerce
  • Adobe Commerce オンプレミス

クラウドインフラストラクチャー上のAdobe Commerce

デフォルトのAdobe Commerce プロジェクトには、1 つの web サイト、ストア、ストアビューを含む階層が含まれています。 より複雑な実装の場合は、マルチサイト ストアフロント用に追加の web サイト、ストア、ストア表示を作成できます。

単一サイトのストアフロント

単一サイトのストアフロント用に robots.txt ファイルと sitemap.xml ファイルを設定する際は、次のベストプラクティスに従います。

  • プロジェクトで ece-tools バージョン 2002.0.12 以降が使用されていることを確認します。

  • 管理アプリケーションを使用して、robots.txt ファイルにコンテンツを追加します。

    note tip
    TIP
    ストアの自動生成された robots.txt ファイルを <domain.your.project>/robots.txt で表示します。
  • Admin アプリケーションを使用して、sitemap.xml ファイルを生成します。

    note important
    IMPORTANT
    クラウドインフラストラクチャプロジェクト上のAdobe Commerceの読み取り専用ファイルシステムがあるので、ファイルを生成する前に pub/media パスを指定する必要があります。
  • カスタム Fastly VCL スニペットを使用して、サイトのルートから、両方のファイルの pub/media/ の場所にリダイレクトします。

    code language-vcl
    {
      "name": "sitemaprobots_rewrite",
      "dynamic": "0",
      "type": "recv",
      "priority": "90",
      "content": "if ( req.url.path ~ \"^/?sitemap.xml$\" ) { set req.url = \"pub/media/sitemap.xml\"; } else if (req.url.path ~ \"^/?robots.txt$\") { set req.url = \"pub/media/robots.txt\";}"
    }
    
  • Web ブラウザーでファイルを表示して、リダイレクトをテストします。 例えば、<domain.your.project>/robots.txt<domain.your.project>/sitemap.xml です。 リダイレクトを設定したルートパスを使用しており、別のパスを使用していないことを確認してください。

INFO
手順について詳しくは、 サイトマップと検索エンジンロボットの追加を参照してください。

マルチサイトのストアフロント

クラウドインフラストラクチャー上にAdobe Commerceを 1 つ実装するだけで、複数のストアを設定して実行できます。 複数の web サイトまたはストアの設定を参照してください。

マルチサイトストアフロントでは、 シングルサイトストアフロント用の robots.txt ファイルと sitemap.xml ファイルの設定に関するベストプラクティスが適用されますが、次の 2 つの重要な違いがあります。

  • robots.txtsitemap.xml のファイル名に、対応するサイトの名前が含まれていることを確認してください。 例:

    • domaineone_robots.txt
    • domaintwo_robots.txt
    • domainone_sitemap.xml
    • domaintwo_sitemap.xml
  • 少し変更したカスタム Fastly VCL スニペットを使用して、サイトのルートから、サイトをまたいで両方のファイルを pub/media の場所にリダイレクトします。

    code language-vcl
    {
      "name": "sitemaprobots_rewrite",
      "dynamic": "0",
      "type": "recv",
      "priority": "90",
      "content": "if ( req.url.path == \"/robots.txt\" ) { if ( req.http.host ~ \"(domainone|domaintwo).com$\" ) { set req.url = \"pub/media/\" re.group.1 \"_robots.txt\"; }} else if ( req.url.path == \"/sitemap.xml\" ) { if ( req.http.host ~ \"(domainone|domaintwo).com$\" ) {  set req.url = \"pub/media/\" re.group.1 \"_sitemap.xml\"; }}"
    }
    

Adobe Commerce オンプレミス

管理アプリケーションを使用して robots.txt ファイルと sitemap.xml ファイルを設定し、ボットが不要なコンテンツをスキャンしてインデックスを作成しないようにします( 検索エンジンロボットを参照)。

TIP
オンプレミス環境の場合、ファイルを書き込む場所は、Adobe Commerceのインストール方法によって異なります。 インストールに適した /path/to/commerce/pub/media/ または /path/to/commerce/media のどちらかにファイルを書き込みます。

セキュリティ

robots.txt ファイルで管理者パスを公開しないでください。 管理者パスを公開すると、サイトハッキングの脆弱性が生じ、データが失われる可能性があります。 robots.txt ファイルから管理者パスを削除します。

robots.txt ファイルを編集し、管理パスのすべてのエントリを削除する手順については、 マーケティングユーザーガイド/SEO と検索/検索エンジンロボットを参照してください。

TIP
サポートが必要な場合は、Adobe Commerce サポートチケットを送信してください。

追加情報

recommendation-more-help
754cbbf3-3a3c-4af3-b6ce-9d34390f3a60