Cloudflare のメールアドレス難読化(Email Address Obfuscation)を有効にすると、ウェブページ上のメールアドレスはボットから隠され、人には見えたままです。訪問者から見たサイトの見た目は変わりません。
メールハーベスターなどのボットは、インターネット上を巡回し、スパム送信先リストに載せるメールアドレスを探します。その結果、不要なメールが増えています。
ウェブ管理者は、help [at] cloudflare [dot] com のように書き換える、埋め込み画像にするなど、さまざまな対策をしてきました。ただし、アドレスをクリックしてすぐメールを送る便利さは失われます。Cloudflare の Email Address Obfuscation を有効にすると、ウェブページ上のメールアドレスはボットから難読化(隠蔽)され、人には見えたままです。訪問者から見たサイトの見た目は変わりません。
Email Address Obfuscation を有効にすると、Cloudflare は HTML 内の見えるメールアドレスを [email protected] のようなリンクに置き換えます。訪問者がこの難読化形式を見た場合、リンクをクリックすると実際のメールアドレスが表示されます。ボットによる収集は防ぎつつ、実ユーザーはアドレスにアクセスできます。
Cloudflare は小さなデコード用スクリプト(email-decode.min.js)を、defer 属性付きでページに挿入します。このため、スクリプトはページ描画をブロックしません。HTML の解析と並行してダウンロードされ、ドキュメントの解析が終わってから実行されます。難読化されたメール要素を扱う独自の JavaScript がある場合、デコードスクリプトは DOMContentLoaded イベントより前に走る点に注意してください。
Cloudflare は、サインアップ時にメールアドレスの難読化を自動で有効にします。
ダッシュボードで Email Address Obfuscation を無効にする手順は次のとおりです。
-
Cloudflare ダッシュボードで、Security の Settings ページを開きます。
Settings を開く ↗ -
(任意)Client-side abuse で絞り込みます。
-
Email Address Obfuscation のトグルを Off にします。
API で Email Address Obfuscation を無効にするには、URI パスの設定名を email_obfuscation、value パラメーターを "off" にして PATCH リクエストを送ります。
特定のメールアドレスを Cloudflare が難読化しないようにするには、次のいずれかを使います。
-
ページの HTML に次のコメントを追加します。
<!--email_off-->[email protected]<!--/email_off--> -
AJAX 呼び出しではメールアドレスを JSON 形式で返し、ウェブサーバーの Content-Type を
application/jsonにします。 -
特定のエンドポイントに適用する configuration rule を作成し、Email Obfuscation を無効にします。
想定外のサイト動作を防ぐため、次の場所に現れるメールアドレスは難読化しません。
aタグのhref属性を除く、任意の HTML タグ属性。- 次の HTML タグ内:
<script></script><noscript></noscript><textarea></textarea><xmp></xmp><head></head>
- MIME タイプが
text/htmlまたはapplication/xhtml+xmlでないページ。