メンバーはログインする必要のある安全なWebサイト(Windows ServerとIIS 5上で実行される.NET 2.0/C#で開発された)を持っており、仮想ディレクトリに保存されたPDFファイル。スパイダーがこのウェブサイトをクロールするのを防ぐために、すべてのユーザーエージェントのログインを禁止するrobots.txtがあります。ただし、robots.txtコマンドを無視するため、RogueスパイダーがPDFファイルのインデックスを作成することはできません。ドキュメントは安全であるため、私はこの仮想ディレクトリにどんなスパイダーが入ってもいいわけではありません。不正なスパイダーによるインデックス作成の防止
ウェブ上のいくつかの記事を読んで、非常に一般的な問題のように思われるので、どのようにして(ウェブマスターではなく)プログラマーがアプリケーションでこの問題を解決したのか疑問に思う。ウェブには多くのオプションがありますが、簡単でエレガントなものを探しています。
一部のオプションは見たことがありますが、弱いと思われます。自分の短所とここに記載されている:
は、不正なスパイダーがで取得できるようになりますし、その後、そのIPアドレスの一覧が表示されますハニーポット/ターピットを作成します。欠点:これは、同じIPから来ている有効なユーザーをブロックしたり、このリストを手動で維持したり、メンバーがリストから自分自身を削除するための何らかの方法を持たせる必要があります。ウェブサイトがインターネット上にあるので、有効なメンバーが使用するIPの範囲はありません。
リクエストヘッダー分析:ただし、不正なスパイダーは実際のエージェント名を使用するため、これは無意味です。
メタロボットタグ:短所:Googleと他の有効なスパイダーだけに従います。
.htaccessを使用することに関するいくつかの話がありましたが、それは良いと思われますが、それはIISではなく、Apacheのみになります。
どのような提案も大変ありがとうございます。
EDIT:以下に指摘されているように、不正なスパイダーはログインが必要なページにアクセスできないはずです。私は、「ウェブサイトにログインせずにPDFファイルを要求しているリンクフォームを知っている人を防ぐ方法」と質問しています。
こんにちは9000、あなたは正しいです。スパイダーはログインが必要なページにはクロールできません。私は問題は誰かが既にリンクを知っていて、ログインせずにそれを取得しようとしていることだと思う。 – Pritika
実際には、ページはスパイダーから安全かもしれないが、ログインせずにファイルにアクセスできる場合はまだ公開されている。 URLを知っているユーザーがログインせずにファイルを見ることができた場合は、どんなスパイダーであっても構わないはずです(少し難易度は高いですが)。おそらく、おそらくApacheで、ファイルへの不正アクセスを完全に防止したいと思うでしょう。 – Kzqai