حماية عناوين البريد الإلكتروني من روبوتات البريد العشوائي / زحف الويب

StackOverflow https://stackoverflow.com/questions/3663963

سؤال

كيف تمنع تجميع رسائل البريد الإلكتروني من صفحات الويب عن طريق العناكب البريد الإلكتروني؟ يفعل 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';

إذا كنت بحاجة إلى عرض عنوان البريد الإلكتروني على الصفحة ، فإن الحل الشائع هو إنشاء صورة باستخدام شيء مثل GD من PHP (على الرغم من أن حقن JavaScript يجب أن يعمل بشكل جيد لهذا أيضًا).

تتمثل الفكرة في إزالة عناوين البريد الإلكتروني من HTML وحقنها باستخدام JavaScript. وبهذه الطريقة ، لا يظهر عنوان البريد الإلكتروني في شكله الأصلي في أي من حركة مرور HTTP ، وهو ما ينظر إليه العنكبوت.

أميل إلى تجنب أ mailto لأنه يجعل من السهل جدًا على الأشخاص حصاد عناوين البريد الإلكتروني.

إذا كنت ستحصل على صفحات الاتصال على موقع الويب الخاص بك ، فعليك فقط أن يكون لديك نموذج ، وعندما يقومون بإرسال رمز من جانب الخادم الخاص بك ويستخدمون عنوان البريد الإلكتروني المناسب.

إذا كنت بحاجة إلى أن تكون قادرًا على توفر عناوين الآخرين ، فاستخدم الأرقام والأسماء وأسماء المستخدمين وطريقة التعرف عليها.

إذا كان لديك فقط عنوان بريد إلكتروني في فترة ، فمن المحتمل أن يتم التقاطه ، حتى لو حاولت إخفاءه ، لأن هذه البرامج يمكن أن تكون معقدة إلى حد كبير ، حيث أن العثور على عناوين البريد الإلكتروني هو ما تدور حوله.

كما هو الحال مع معظم الأسرار ، إذا كنت لا تريد أن يحصل عليها الآخرون ، فلا تضعهم على الصفحة.

عادةً ما أقوم بتقسيمها إلى أجزاء منفصلة ثم أعيد ضغطها باستخدام JavaScript. يقوم JavaScript النهائي بمستند. الكتابة لكتابة 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