cirry

cirry

我的原生博客地址:https://cirry.cn

Astroフレームワークを使用して作成されたブログウェブサイトにSitemapを追加する

@astro/sitemap のインストール#

まず、Astro の公式 Sitemap パッケージをインストールします:

# NPMを使用する場合
npx astro add sitemap
# Yarnを使用する場合
yarn astro add sitemap
# PNPMを使用する場合
pnpm astro add sitemap

y を押して Enter キーを押すと、astro は自動的にastro.config.mjs設定ファイルに sitemap パッケージを追加します。

設定ファイルに以下のコードがあることを確認してください。ない場合は、自分で追加してください:

import { defineConfig } from 'astro/config';
import sitemap from '@astrojs/sitemap';

export default defineConfig({
  // ...
  integrations: [sitemap()],
})

設定が完了したら、パッケージをビルドしてください。すると、ルートディレクトリにsitemap-0.xmlというファイルが生成されます。これがサイトマップファイルであり、検索エンジンに送信するためのものです。

百度の検証を追加#

注意:サイトマップのインデックスにはサイトの検証が必要です。百度検索リソースプラットフォームで自分のウェブサイトを追加し、以下の手順に従ってサイトの検証を行ってください:サイトの検証の詳細

image

適切なサイトのプロパティを選択してください。

image

ファイルの検証を選択し、検証ファイルをダウンロードして、ウェブサイトのルートディレクトリに配置してください。

パッケージをビルドしてデプロイした後、検証ファイルにアクセスできることを確認してください。

百度のインデックスを追加#

百度リソース検索プラットフォーム - 一般的なインデックスにアクセスし、ウェブサイトのサイトマップのアドレスを入力してください。

image

Google の検証を追加#

Google 検索コンソールのドキュメントを参照してください。

サイトマップを提出する方法:ブラウザまたはコマンドラインで次のアドレスに GET リクエストを送信し、サイトマップの完全な URL を指定します。サイトマップファイルがアクセス可能であることを確認してください:

https://www.google.com/ping?sitemap=FULL_URL_OF_SITEMAP  # FULL_URL_OF_SITEMAP: サイトマップファイルの場所

例えば、ブラウザで以下のリンクを直接入力してアクセスします:

https://www.google.com/ping?sitemap=https://cirry.cn/sitemap-0.xml

以下のようなページが返されます:

image

ページ上のリンクhttp://www.google.com/webmasters/tools/をクリックすると、Google のSearch Consoleに移動します。

image

ウェブサイトを入力し、ウェブサイトを検証します。

検証が成功すると、検証方法を追加するように求められます。

次の方法を選択できます:HTML ファイルをダウンロードし、ウェブサイトのルートディレクトリに追加する方法:

image

または、次のリクエストヘッダーをウェブサイトのヘッダーに追加する方法:

image

追加した後、Google Search Consoleで再度検証し、以下のような画像が表示されれば追加が完了です。

image

Google のインデックスを追加#

Google Search Consoleのサイトマップにウェブサイトのサイトマップのアドレスを入力してください。

image

問題に遭遇した場合#

正常な操作が完了した後、百度リソース検索プラットフォームクロール診断でウェブサイトの Robots とクロール診断が正常に機能しているかを確認してください。

私は一般的なインデックスでウェブサイトのサイトマップを追加しましたが、百度によるインデックスの失敗が発生しました。

image

クロール診断では、クロール診断エラーが発生し、robots がブロックされているというエラーメッセージが表示されました。そのため、xml-sitemapsで自分のウェブサイトをスキャンできるかどうかテストしました。

このウェブサイトも検出できなかったため、クローラープロトコルに制限があると判断しました。そのため、クローラープロトコルを変更し、次のような robots.txt ファイルを作成しました:

User-agent: *
Allow: /
Sitemap: https://cirry.cn/sitemap-0.xml

変更が完了したら、エラーメッセージのグラフでエラーをクリックし、エラーメッセージを百度に報告してください。

image

image

数分後、xml-sitemapsで正常にクロールできるようになりました。百度に再度送信すると、正常にインデックスされます。

注意:百度はインデックス型のサイトマップを許可していませんので、@astro/sitemapで生成される 2 つのサイトマップファイルsitemap-0.xmlsitemap-index.xmlを robots.txt ファイルに書き込まないでください。そうしないと、百度は Robots のブロックを示すエラーメッセージを表示し、情報をクロールできなくなります。

他の問題に遭遇した場合は、クロール診断ツールの一般的なエラータイプの解析を参考にしてください。

次のコマンドを使用して、robots がブロックされているか、または IP の解析が失敗しているかを確認できます。http 200 が返されれば正常です。それ以外の場合は異常です。最後のウェブサイトリンクを自分のウェブサイトに置き換えることを忘れないでください。

curl --head  --user-agent 'Mozilla/5.0 (compatible; Baiduspider/2.0; +<http://www.baidu.com/search/spider.html)>' --request GET 'https://cirry.cn'
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。