こんばんは、Webプログラマの篠田です。
日中の温度差が激しく未だに衣替えができておりません。
そろそろ、気がつくと11月となりますのでこの週末には衣替えを決行しようかと考えています。
さて、今回ご紹介するのは、最近流行りのCDN(Content Delivery Network)サービスである「CLOUD FLARE(クラウドフレア)」にまつわるトラブルシューティングに関してご紹介したいと思います。
※今回はCDNやCLOUDFLAREとは、というお話は割愛します。
[email protected]の原因
「CLOUDFLARE」は、非常に便利な機能を初期設定で提供してくれています。
その中でも便利なのが、「mailto:◯◯@gmail.com」などで書かれたメールアドレスを行儀の悪いBotに収集されないように難読化をしてくれるという機能があります。
コーダー「わざわざ難読化処理を追加しなくてラッキー!!」
そうです。普通に使う分には手間を省いてくれるので問題はありません。
ですが、これがある特定の条件を満たしてしまったときに牙をむくことになります。
それが「『@』を含む『メールアドレスでない』文章が含まれているとき。」です。
「CLOUDFLARE」は「@」を見つけたときに「お!メールアドレスはっけ――ん。難読化。難読化」と意気揚々と片っ端から難読化するという習性があります。
コーダー「そんなメールアドレス以外に『@』は使わないでしょww」
通常のサイトではほとんど影響がないのですが、例えば「twitter」のユーザー名は「@◯◯さん」みたいな表記をしますよね。
あとは、「@場所名」的な使い方をする場合があります。
そういった文章を含むWebページに「CLOUDFLARE」を利用すると、文章に突然「[email protected]」という謎の文章が表示されて本来の文章が読めなくなるというトラブルに巻き込まれる場合があります。
[email protected]の対処方法(1)
一番簡単な方法は、「CLOUDFLARE」のこの親切機能を無効化することが考えられます。
■メールアドレスの自動難読化処理の無効化手順
(1)お使いの「CLOUDFLARE」にログインをしてください。
(2)メニューの中に「Scrape Shield」というメニューが右端に有りますのでクリックしてください。
(3)一番上の項目に「Email Address Obfuscation」という項目があります。
(4)「ON」になっているのをクリックして「OFF」にします。
これで、メールアドレスの自動難読化処理が停止します。
再読込をして戻っていない場合は「CLOUDFLARE」のキャッシュをクリアしてみてください。
[email protected]の対処方法(2)
コーダー「こんな便利な機能を停止するなんてもったいない!!」
こういう意見もありますね。
そういった場合は個別に難読化をしない設定にするというのが、「Email Address Obfuscation」項目のヘルプに書かれています。
方法は難読化したくない「@」を下記にように記述してください。
1 |
ああああ<!--email_off-->@<!--/email_off-->ああああ |
これで「@」は「@」として表示されるようになります。
【注意点】
この個別に「@」を無効化するというのは、なかなか手間のかかる対応です。
それに、ユーザーに自由記述を許している場合は、どこで使われるか予測がつきません。
そういう場合は工数を考えて「mailto」を個別に難読化するかどうかを天秤にかけて頂き対応をすすめてください。
まとめ
Webサイトを作る上で「CLOUD FLARE(クラウドフレア)」は強い味方になってくれますが、少々癖のあるサービスではあるので、癖を知った上で使わないと思わぬ落とし穴にはまってしまう恐れがありますのでご注意ください。
では、またー。