web-dev-qa-db-ja.com

robots.txtに「Disallow」を含むオプションのクエリ文字列の指定

ウェブサイト用にrobots.txtファイルを作成していますが、これには多くのページがあります。

クロールする必要のないすべてのページを許可しません:

Disallow: /folder/file.aspx

私のウェブサイトには非常に多くのページがあります。また、クエリ文字列を使用するものもあります。

クエリ文字列のオプションの存在を指定して、ロボットのクロールを禁止するにはどうすればよいですか?

私はこれを試しました

Disallow: /folder/file.aspx?*

これにより、クエリ文字列パラメーターを持つfile.aspxが許可されなくなります。しかし、クエリ文字列パラメータを持つことが期待されていないファイルがあり、私が書いている場合、file_with_no_query_string.aspxを許可しません

 Disallow: /folder/file_with_no_query_string.aspx?*

短縮: "?*"を指定すると、常にクエリ文字列が必要になりますか?

3
Parth

クエリ文字列の一部をクロールする必要がない限り、次を使用してファイル全体へのアクセスを単に拒否できます。

Disallow: /folder/file.aspx*

これにより、ファイル自体のクロールと、ファイルの末尾に追加されるすべてのクエリ文字列の両方のクロールが禁止されます。

0

Disallow: /folder/file.aspx

/folder/file.apsx/folder/file.aspx?foo=barの両方をブロックするには、最初に必要なものがすべて必要です。疑わしい場合は、Google Search Consoleのrobots.txtテストツールで確認してください。

robots.txtプレフィックス一致であるため、URLパスの末尾にワイルドカード(*)を含める必要はありません。

ワイルドカード文字(*)は、元の「標準」の拡張機能でもあるため、互換性を最大限に高めるためには避けてください。

1
DocRoot