私は大規模なリンクデータベースを持っているので、それらをコピーしたい他の人から保護したいと思います。各リンクの前に人々にCAPTCHAに入るように強制する以外に私ができることはありますか?
2 に答える
ROT13を使用してリンクを出力してから、javascriptを使用してリンクを通常の状態に戻すことができます。このように、スクレーパーはリンクを盗むためにjavascriptをサポートする必要があります。これにより、適格なスクレーパーの数が削減されます。
ボーナスポイント:ROT13をより難しいものに置き換え、「デコード」JavaScriptを難読化します。
JavaScriptの提案は機能する可能性がありますが、スクリーンリーダーなどの支援技術を使用しているユーザーや、JavaScriptを使用していないユーザーは、ページにアクセスできなくなります。
別の可能なオプションは、暗号ナンスを生成することです。この手法は現在、CSRF攻撃から保護するために使用されていますが、リンクにアクセスする前にスクレーパーがサイトからページを要求する必要があることを確認するためにも使用できます。ホットリンクをサポートしている場合、このアプローチは適切ではないかもしれませんが、誰かが最初にサイトにアクセスしたことを確認したいだけの場合は、うまくいく可能性があります。
もう1つのゲットーのオプションは、リファラーを使用することです。これらは簡単に偽造できますが、一部のダンバースクレーパーを防ぐ可能性があります。これには、ユーザーがサイトにアクセスする前に、ユーザーがどこから来たのかを知っている必要もあります。
ホットリンクしているのか、保護されたリンクにアクセスする前にユーザーがサイトにアクセスしたのかを教えてください。そうすれば、より良いアドバイスを提供できるかもしれません。