質問

メールクモによってWebページからメールが収集されるのをどのように防ぎますか?します mailto: それらをリンクすると、それらが拾われる可能性が高まりますか? URLエンコードは便利ですか?

明らかに、最良の対策は、ログインしたユーザーに電子メールアドレスのみを表示するか、メールアドレスの代わりに連絡先フォームを提供することです。しかし、純粋にクライアント側のソリューションに関しては、何が利用可能ですか?

役に立ちましたか?

解決 4

数年後、私は別のウェブサイトのために次のjQueryを作成しました:

$(".email").each(function() {
    $(this).html( $(this).html().replace("...", "@").replace(/\.\.\./g, ".") );
    $(this).attr( "href", $(this).attr("href").replace("...", "@").replace(/\.\.\./g, ".") );
});

その後、メールは次のように記述されます。

<a href="mailto:bob.smith...example...com" class="email">bob.smith...example...com</a>

完璧ではありませんが、非常にシンプルで、ほとんどの電子メールハーベスターを阻止しているようです。この方法の利点は、JavaScriptを使用していない人がおそらく実際のメールアドレスが何であるかを解決できることです。


これをチェックしてください さまざまな電子メールの難読化方法に関する研究.

他のヒント

ほとんどの電子メールスパイダーにはjavaScript通訳者がいないので、本当に必要な場合 mailto: JavaScriptで挿入できます...どうにかしてJavaScriptでアドレスが不明瞭になっていることを確認してください。

myLink.href='mai'+'lto:'+'bob'
           +'@'
           +'example.com';

ページにメールアドレスを表示する必要がある場合、一般的な解決策は、PHPのGDのようなものを使用して画像を生成することです(ただし、JavaScriptインジェクションはこれにも問題なく機能するはずです)。

アイデアは、HTMLから電子メールアドレスを削除し、JavaScriptを注入することです。そうすれば、メールアドレスはHTTPトラフィックのいずれにも元の形で表示されません。これは、クモが見ているものです。

私は避ける傾向があります mailto 人々が電子メールアドレスを収穫することは簡単すぎるためです。

Webサイトに連絡先ページがある場合は、フォームを作成し、サーバー側のコードを送信して適切な電子メールアドレスを使用する場合です。

他の人のアドレスを利用できるようにする必要がある場合は、数字、名前、ユーザー名、それらを識別する何らかの方法を使用してください。

メールアドレスがある場合、メールアドレスを隠そうとしても、これらのプログラムを見つけることができるため、メールアドレスを見つけることができるため、それを隠そうとする場合でも、それが取り上げられる可能性があります。

ほとんどの秘密と同様に、他の人にそれらを手に入れたくない場合は、ページに入れないでください。

私は通常、それらを別々の部分に分割し、JavaScriptを使用してそれらを再結合します。最終JavaScriptはdocument.writeを実行して、HTMLを書き留めます。

すなわち

var mail = "mailto";
var namepart = "test.user";
var domainpart = "example";
var tld = "com"; 
var address = namepart + "@" + domainpart + "." + tld;
document.write("<a href=" + mail + ":" + address + '">' + address + "</a>";

メールリンクが必要ない場合は、 @ でシンボル

例:サム Example.com

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top