3

基本的に http HEAD リクエストを実行して、ページが存在するかどうか、リダイレクトなどを確認する、私が書いた小さなアプリをテストしてきました。一部のページは、GET リクエストとは異なる方法で HEAD に応答することに気付きました。例えば:

curl -I http://www.youtube.com/bbcpersian

404 を返します。間違いなくそこにあります。一部の (非常にメジャーな) サイトでは、HEAD に応答して 500 エラーを返すことさえありますが、これは意図的なものではないと思います。

だから私の質問は:

  • 特定のサイト (またはサイト内のページ) が構成の問題や Web マスターがボットをブロックしたいという理由以外に、このような動作をする正当な理由はありますか?
  • HEAD リクエストに依存できない場合は、ヘッダーを取得したら、GET を実行してリクエストを中止するだけです。それは少し「間違っている」ように感じます…</li>

このように動作するページの数は % 単位では少ないですが、各誤検出は最終的に手動で調査され、多くの無駄な労力が発生します。

4

2 に答える 2

7

しばらく時間が経過し、さらに多くの調査が行われた後、私は自分の質問に答えることができます。

  • 「野生の」多くのサイトが HEAD リクエストに正しく応答しません。一部のウェブマスターは、HEAD リクエストが悪いボットに関連付けられていると考えているため、200 から HEAD リクエスト以外で応答するようにサイトを構成するよう提案されています。理由を検証することはできませんが、多数のサイト (またはサイトのページ - YouTube の元のポイントを参照) が HEAD 要求に正しく応答しないと言えます。
  • GET、ページが実際に存在する (またはリダイレクトしていないなど) ことを確認する唯一の信頼できる方法です。
于 2011-11-02T21:51:55.743 に答える
1

試行中の URL: http://www.youtube.com/bbcpersian は正しい URL ではないため、404 が表示されます。

正しい URL は次のとおり https://www.youtube.com/user/BBCPersianで、200 が返されます。

于 2019-05-31T06:43:16.560 に答える