robots.txtはサーバーのサブディレクトリにありますか?


16

検索エンジンのWebクローラーから隠したいサブディレクトリがあります。

これを行う1つの方法robots.txtは、サーバーのルートディレクトリでaを使用することです(標準的な方法)。ただし、WebサイトのURLを知っていて、基本的なWeb知識がある人は、robots.txtのコンテンツにアクセスして、許可されていないディレクトリを見つけることができます。

これを避ける方法を考えましたが、うまくいくかどうかはわかりません。

Let Xを除外するサブディレクトリの名前にします。一つの方法は、Webクローラがインデックス作成を停止するXディレクトリを、同時に識別するために、誰かのために困難にするためにX、ルートのからディレクトリをrobots.txt、追加することであるrobots.txtXディレクトリの代わりに、ルートディレクトリ。

この解決策に従う場合、次の質問があります。

  1. Webクローラーrobots.txtはサブディレクトリでそれを見つけますか?(それがrobots.txt既に存在し、ルートディレクトリにも存在する場合)
  2. 場合robots.txtであるXサブディレクトリ、私は相対的または絶対パスを使用する必要が?:

    User-agent: *
    Disallow: /X/
    

    または

    User-agent: *
    Disallow: /
    

2
許可されていないディレクトリを読む人を避けたい理由はわかりませんが、機密データがある場合は、ロボットからブロックされるだけでなく、ログインまたはその他のセキュリティによって制限されるべきです。
アンドリューロット

そうではありません。特定の1人のユーザーにアクセスしてもらい(データに関して機密性の高いものは何もせず、プライバシーのためだけに)、ディレクトリをロックしないようにします。
ラファエル

5
プライバシーに関する懸念がある場合は、他の方法でデータを保護する必要があります。それはrobots.txtの目的ではありません。
アンドリューロット

回答:


18

いいえ、ウェブクローラーはサブディレクトリ内のrobots.txtファイルを読み取ったり従ったりしません。準公式robotstxt.orgサイトで説明されているように:

どこに置くか

簡単な答え:Webサーバーの最上位ディレクトリ。

またはGoogleのヘルプページ強調マイニング):

robots.txtファイルはファイルである、あなたのサイトのルートには、検索エンジンのクローラがアクセスしたくないサイトの部分を示しています。

いずれにしても、他のページがリンクしている場合、検索エンジン robots.txtで許可されていないページインデックスに登録できるため、robots.txtを使用して検索結果から機密ページを非表示にすることはお勧めできません。または、上記のGoogleヘルプページに記載されているとおり:

robots.txtをGoogle検索結果からWebページを隠す手段として使用しないでください。これは、他のページがページを指している可能性があり、robots.txtファイルを使用せずにページがそのようにインデックス付けされる可能性があるためです。

では、代わりに何をすべきでしょうか?

  • 検索エンジンにページをクロールさせることができます(ページが見つかった場合)が、コンテンツにrobotsメタタグを含めることができますnoindex,nofollow。これにより、検索エンジンがそれらのページへのリンクを見つけたとしても、それらのページのインデックスを作成せず、それらのページからそれ以上のリンクをたどらないように指示します。(もちろん、これはHTML Webページでのみ機能します。)

  • 非HTMLリソースの場合、同じコンテンツでX-Robots-Tag HTTPヘッダー.htaccessを送信するように(たとえばファイルを使用して)Webサーバーを構成できます。

  • パスワード認証を設定して、機密ページを保護できます。許可されていない人間の訪問者からページを保護するだけでなく、Webクローラーを効果的に遠ざけます。


素晴らしい、静的なHTMLページであり、メタタグを追加することでトリックを実行します。ありがとうございました。
ラファエル

5

あなたは、robots.txtルートディレクトリにある必要があり、他の名前を持つべきではありません。標準仕様によると:

このファイルは、ローカルURL「/robots.txt」でHTTP経由でアクセスできる必要があります。


とは言っても、webクローラーはrobots.txtの他のディレクトリを参照しませんか?
ラファエル

1
私が今まで見たことがありません。/robots.txtが標準であるので、検索エンジンはそれ以外の場所をどのように見分けるのでしょうか?
アンドリューロット

0

実際には、サブディレクトリでrobots.txtを使用できます。現在、これが言語サブドメインの扱い方です。(サブドメインごとに)/robots.txtから/lang/robots.txtへの301リダイレクトを使用しており、正しく取得されています。

また、単純なスラッシュを使用する場合、フォルダー構造を正しいルートとして選択します。例えば。不許可:/

{redirected} robots.txtファイルが存在する現在のサブディレクトリだけでなく、すべてを禁止するものとして扱われます。

しかし、繰り返しますが、301を使用してリダイレクトし、その場所に配置します。したがって、301がなければ、それが見つかることはないでしょう。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.