2

これは私が今使っているものです:

User-agent: *
Allow: /
Allow: /video/funny-dogs/index.html
Allow: /video/funny-cats/index.html
Allow: /video/funny-dolphins/index.html
Disallow: /video/

しかし、他のすべての「/video/」URL もクロールされているようです。

それの何がいけないの?

4

2 に答える 2

3

あなたの robots.txt ファイルは間違いなく Google で機能するはずです。Bing でも機能すると思います。ただし、他の多くのロボットでは、すべてのロボットが競合する許可と禁止を同じように優先するわけではないため、おそらくうまくいきません。また、一部のロボットは許可をまったくサポートしていません。

Google/Bing 以外のロボットの場合は、"Allow: /" 行を削除することで成功の可能性を高めることができます。古いロボットの多くは、現在の URL に適用できる最初のディレクティブを探してから、探すのをやめます。これらのロボットには常に許可が適用され、他のディレクティブは常に無視されます。「Allow: /」を削除すると、これが修正されます。

Google または Bing が robots.txt ファイルに従っていない場合は、何かが壊れている可能性があります。次のことを確認できます。

  • robots.txt ファイルはごく最近追加/変更されましたか? Google が新しい robots.txt ファイルを認識するまでに 1 週​​間ほどかかる場合があります。
  • robots.txt はサイトのルート ディレクトリにありますか? (例: http://somesite.com/robots.txtで、 http://somesite.com/subdir/robots.txtではありません)
  • robots.txt ファイルに対するリクエストは、X-Robots-Tag:noindex や 200 以外のステータス コードなど、レスポンス ヘッダーで異常なものを返しますか?
于 2013-09-03T17:11:28.957 に答える
1

元の robots.txt 仕様では、ボットは robots.txt を読み取り、適用される最初のルールを採用する必要があるとされていました。が追加されたときAllow、それは変更されておらず、多くのボットが今でもそのルールを使用しています。他のボットは、最も寛容なルールを使用します。

最初のケースでAllow: /は、ファイルの最初の行で、ボットはクロールできると認識します。2 番目のケースでは、ファイル内の任意のAllow: / 場所に が存在するため、ボットは何でもクロールできると想定します。

を含める正当な理由はありませんAllow: /。robots.txt では、ファイルが明確に禁止されていなければ、クロールが許可されると想定しています。Allowに対するオーバーライドまたは例外を意図していますDisallow

を取り外しますAllow: /。その後、物事はうまくいくはずです。

于 2013-09-04T20:42:47.000 に答える