web-dev-qa-db-ja.com

favicon.icoリクエストでACCEPTヘッダーが空のトラフィックを拒否する

潜在的な有害なトラフィックを除外する一環として、現在、$ _ SERVER ["HTTP_ACCEPT"]が空のトラフィックを拒否しています。

ログから、acceptヘッダーが空であるためにかなりの数のリクエストが拒否され、それらの一部はfavicon.icoをリクエストするときに有効なIPトラフィックからのものであることがわかりました。

現在、これらのfavicon.icoリクエストを「403Forbidden」でブロックしています(おそらく406 Not Acceptableを使用する必要があることはわかっています)。

私のサイトにはfavicon.icoがあります。 favicon.icoの「見つかりません」エラーがユーザーに表示されないことを認識しています。これらのページをブロックするのも同じですか、それとも403 Forbiddenページが表示されますか?

これを自分でテストしたいのですが、空のヘッダーでページリクエストを生成する方法がわかりません。おそらく誰かがこれを行う方法を持っているなら、それは助けになるでしょう。

ご意見ありがとうございます。

2
mseifert

これらのページをブロックするのも同じですか、それとも403 Forbiddenページが表示されますか?

ファビコンを含むブロックされた画像では、403ページは表示されません。画像は、見つからなかった場合と同じようには表示されません。

1
Chris S

それはtelnetでかなり簡単です。

次のようなことができます。コマンドプロンプト(Windowsではcmdを実行)を開き、次の3行を入力します。

telnet www.yoursite.com 80
GET /favicon.ico HTTP/1.1
Host: www.yoursite.com
  • 出力には2回入力します
  • Ctrl + Cを入力して、コマンドプロンプトに戻ります。

ヘッダーとhtmlを含むNice出力が得られます。


100万年前に最後にtelnetを使用した私たち、またはネビーのためのヒント:

  • Windows 7では、最初にTelnetクライアントまたはサーバーを有効にする必要がある場合があります。 ここ を参照してください。

  • 次に、Connecting To localhost...のみが表示されている場合は、 this の回答を参照してください。これは、telnetはデフォルトでは入力内容をエコーし​​ないためです。

1
SamK