কোনও ওয়েবসাইটে কোনও ইমেল ঠিকানা অস্পষ্ট করার সর্বোত্তম উপায়?


136

আমি আমার ব্যক্তিগত ওয়েবসাইট আপডেট করার জন্য গত কয়েক দিন ব্যয় করেছি। আমার ব্যক্তিগত ওয়েবসাইটের ইউআরএল (আমার প্রথম নাম) last (আমার শেষ নাম) com আমার ই-মেইল ঠিকানাটি (আমার প্রথম নাম) @ (আমার শেষ নাম) com সুতরাং সত্যিই, যখন এটি অনুমান করতে নেমে আসে, এটি খুব বেশি কঠিন নয়।

যাইহোক, আমি একটি মেইলটো সংহত করতে চাই: আমার ওয়েবসাইটে লিঙ্ক করুন, যাতে লোকেরা আমার সাথে যোগাযোগ করতে পারে। এবং, আমার ইমেল ঠিকানাটি অনুমান করা খুব কঠিন না হওয়া সত্ত্বেও, আমি এটি স্প্যাম বট দ্বারা ফসল কাটা না করেছি যা কেবলমাত্র ই-মেইল ঠিকানার জন্য ওয়েবসাইট ক্রল করে তাদের ডেটাবেসে যুক্ত করে।

আমার ই-মেইল ঠিকানাটি অগ্রাহ্য করা লিংক আকারে সবচেয়ে ভাল উপায় কী? আমি যে পদ্ধতিগুলি সম্পর্কে জানি সেগুলি হ'ল:

<a href="mailto:x@y.com">e-mail me</a>

এটি কাজ করে, তবে এর অর্থ হ'ল আমার ওয়েবসাইট গুগলকে হিট করার সাথে সাথে স্প্যামের বটগুলি সহজেই আমার ই-মেইল ঠিকানাটি বেছে নেওয়ার সাথে সাথে আমি স্প্যামের মধ্য দিয়ে ঘুরে বেড়াচ্ছি।

<img src="images/e-mail.png" />

এটি কম পছন্দসই, কারণ দর্শক কেবল আমাকে একটি ইমেল প্রেরণ করতে এটিতে ক্লিক করতে অক্ষম হবে, তবে স্মার্ট স্প্যাম বটগুলি সম্ভবত ছবিটিতে থাকা অক্ষরগুলি সনাক্ত করতে সক্ষম হবে।

আমি জানি যে সম্ভবত কোনও নিখুঁত সমাধান নেই, তবে আমি কেবল ভাবছিলাম যে সবাই সবচেয়ে ভাল কি বলেছিল। আমি অবশ্যই প্রয়োজনে জাভাস্ক্রিপ্ট ব্যবহার করতে ইচ্ছুক, কারণ আমার ওয়েবসাইটটি ইতিমধ্যে এটি প্রচুর পরিমাণে ব্যবহার করে।


10
বার্তাটি আপনার GMail অ্যাকাউন্টে ফরোয়ার্ড করুন। ;-)
ডেভ জার্ভিস


এই পোস্টটি এখানে লিঙ্ক করা উচিত।
ক্লাইমেন্ট

উত্তর:


106

আমি এইচটিএমএল সত্তা হিসাবে অক্ষরগুলি এনকোড করেছি ( এরকম কিছু )। এটি জেএস সক্ষম করার প্রয়োজন হয় না এবং মনে হয় বেশিরভাগ স্প্যাম বন্ধ করে দিয়েছে। আমি মনে করি একটি স্মার্ট বট এখনও এটি কাটাতে পারে তবে আমার কোনও সমস্যা হয়নি।


6
এটি স্প্যামবট সংগ্রহের সহজ ধরণের স্ট্রাক বন্ধ করে দেয় (রেজিেক্স কোনও পাঠ্যের সন্ধান করে যা ই-মেইল ঠিকানার অনুরূপ) এবং এতে কোনও খারাপ দিক নেই: এটি শেষ ব্যবহারকারীর পক্ষে ঠিক যেমন href = মেইলটো: xxx @ yy লিঙ্ক হিসাবে সুবিধাজনক।
স্টিফেন সি স্টিল 19

5
এটি বেশ ভালভাবে কাজ করে কারণ অনেকগুলি (বেশিরভাগ?) ক্রোলার / ফসল সংগ্রহকারীরা অবিশ্বাস্যভাবে বোকা।
জ্যাকো

43
২০০৮ সাল থেকে এই গবেষণামূলক গবেষণা অনুসারে , ইউআরএল এনকোড পরবর্তী-থেকে-কার্যকর ছিল। কেবল সরল পাঠ্যই খারাপ ছিল।
ফুহরম্যানেটর

16
আমি জানি যে এটি দেরি হয়ে গেছে, তবে এটি উল্লেখ করার মতো যে এখানে পরামর্শটি এইচটিএমএল সত্তা ব্যবহার করা উচিত যা ইউআরএল এনকোডিংয়ের চেয়ে আলাদা different অধ্যয়ন অনুসারে, @ এবং পিরিয়ডের জন্য সত্তা ব্যবহার করা ছিল দ্বিতীয় সর্বাধিক কার্যকর পদ্ধতি (সবচেয়ে কার্যকর ছিল তিনটি পদ্ধতি যা প্রথমে বাঁধা ছিল যার ফলস্বরূপ 0 টি স্প্যাম বার্তা ছিল)। এটি এখনও প্রায় 6 বছর পরে ধরে রাখে কিনা তা আকর্ষণীয় হবে।
বেইলি পার্কার

12
আমি এটি বিদ্রূপজনক মনে করি যে আপনার ইমেলটি সুরক্ষিত করার জন্য আপনাকে এটিকে আপনার সাথে যুক্ত লিখিত সাইটটিতে একটি এলোমেলো, ছায়াময় চেহারার ফর্মটিতে প্রবেশ করতে হবে। হানিপোটিং, কেউ? :)
শ্রোবিনসন

84

ব্যক্তিগতভাবে, আমি আমার ইমেল ঠিকানা লুকিয়ে ছেড়ে দিয়েছি। উদ্বিগ্ন হওয়ার চিন্তার চেয়ে ভাল স্প্যাম-ফিল্টারিং সমাধানগুলিতে সন্ধান করা আমার কাছে সহজ মনে হয়েছে। আপনি নিজের ঠিকানাটি অবলম্বন করার সর্বোত্তম উপায় সন্ধান করার জন্য কয়েক দিন ব্যয় করতে পারেন এবং তারপরে যা দরকার তা হ'ল একজন ব্যক্তি আপনার স্প্যামারের কাছে আপনার ঠিকানা বিক্রি করা এবং সেই সমস্ত কাজ নিরর্থক।


আপনার স্প্যাম ফিল্টারিং যত ভালই হোক না কেন এটি মিথ্যা নেগেটিভ হতে চলেছে (সেই মেলগুলি যেটি পাওয়া উচিত নয়)। শেষ পর্যন্ত আপনাকে ই-মেইল ঠিকানার সাথেই বাঁচতে হবে, তবে মনে হচ্ছে এই ধরণের অপ্রয়োজনীয় এক্সপোজার স্প্যামের পুনরাবৃত্তি বাড়িয়ে তুলবে।
ব্র্যাড বার্কার

8
ব্র্যাড আমার অভিজ্ঞতায় এটি ঘটেনি। আমি আমার ডোমেনগুলির জন্য গুগল হোস্ট করা মেলটি ব্যবহার করি এবং আমার ইমেল ঠিকানাটি খুঁজে পাওয়া অত্যন্ত সহজ। 14 মাসেরও বেশি আগে আমি এটি ব্যবহার শুরু করার পরে আমার 0 টি মিথ্যা নেতিবাচক এবং 1 টি মিথ্যা ইতিবাচক ছিল। আমি আমার স্প্যাম ফোল্ডারে দিনে কয়েকশ স্প্যাম পাই।
রেক্স এম

8
এর, আমার যোগ করা উচিত: স্প্যাম আপনার বাচ্চাদের খেতে চলেছে এমন কোনও বুজিম্যান নয়। একটি বিজোড় স্প্যাম ইমেল পাওয়া বিশ্বের শেষ নয়। "স্প্যাম রিপোর্ট করুন" এ ক্লিক করুন এবং এগিয়ে যান।
চোখের পলকহীনতা

1
@ ব্র্যাড: যদি এটি অপ্রয়োজনীয় হয় তবে আপনার ঠিকানাটি একেবারেই দেবেন না। আপনার ঠিকানাটি দেওয়ার প্রয়োজন হলে স্প্যামের জন্য প্রস্তুত হন get কোনও স্প্যাম্বটকে এটি করা সহজ করে না দিয়ে আপনি কোনও মানুষের পক্ষে আপনাকে ইমেল করা সহজ করতে পারবেন না।
চক

1
আমি কেবল আমার ইমেলটি অবিচ্ছিন্নভাবে পোস্ট করেছি। আমি জিমেইল ব্যবহার করি এবং স্প্যাম ফিল্টারটি দুর্দান্তভাবে কাজ করবে বলে মনে হচ্ছে।
অ্যাসমোর

68

বর্তমান গৃহীত সমাধান হ'ল একটি যোগাযোগ ফর্ম তৈরি করা যা ব্যবহারকারীরা আপনাকে ইমেল করতে দেয়। যদি আপনি সে থেকে প্রচুর স্প্যাম পান (আমি আমার সাইটে নেই), তবে আপনি ভাল পরিমাপের জন্য একটি ক্যাপচা যোগ করতে পারেন এবং আপনি সেই সময়ে "কম ঝুলন্ত ফল" থেকে দূরে থাকবেন be

বিষয়টির সত্যতা হ'ল আপনি যদি কোনও লিঙ্ক সরবরাহ করছেন যা কোনও ব্যবহারকারী তাদের ইমেল ক্লায়েন্টকে টু: ক্ষেত্রে আপনার ঠিকানা সহ খুলতে পপ করতে ক্লিক করতে পারে, তারপরে কম্পিউটারটি পৃষ্ঠা থেকে ইমেল ঠিকানাটি ব্যাখ্যা করতে সক্ষম হবে এবং তাই একটি স্প্যাম বট


2
এর অর্থ, ইমেলটি প্রেরণের যুক্তিটি লুকানো সার্ভার-সাইড কোডে লেখা উচিত যাতে ঠিকানাটি কখনই প্রকাশ্যে না আসে।
জোশ জোর্ডান

8
প্রযুক্তিগতভাবে এটি একটি দুর্দান্ত সমাধানের সময়, এটি একটি সমাধান যা অনেক ব্যবহারকারীর কাছে অফপুট হয়। শুধু Sayin'.
চোখের পলকহীনতা

আপনি একেবারে ঠিক বলেছেন, তবে কেন বুঝতে পারিনি। কমপক্ষে, আপনি ওয়েব ফর্ম থেকে এক ক্লিকে দূরে রয়েছেন, ঠিক যেমন কোনও ইমেল ক্লায়েন্টের সাথে আপনি ন্যূনতম হন। অসুবিধা যুক্ত করার একমাত্র জিনিস হ'ল alচ্ছিক ক্যাপচা। যদি কোনও ব্যবহারকারী আপনার সাথে যোগাযোগ করতে পারে না, তবে তাদের বার্তাটি কি গুরুত্বপূর্ণ ছিল?
জোশ জোর্ডান

15
আমি আপনাকে বার্তাটি সিসির কোনও বিকল্প না পেয়ে পছন্দ করি। যোগাযোগের ফর্মগুলির জন্য যে জিনিসটি আমাকে বিরক্ত করে তা হ'ল এটি আমার নিজের ইমেল সিস্টেমে কোনও রেকর্ড রাখে না। (যদিও কোনও ইমেল ঠিকানা সিসি আকারে এটি নিজস্ব সমস্যার সমাধান তৈরি করতে পারে))
স্যাম হাসলার

6
ইমেল ফর্মটি আসলে কাজ করেছে এমন কোনও ইঙ্গিতও নেই। আমি অনেক দেখেছি যা নিঃশব্দে ভেঙে গেছে। রিয়েল ইমেলগুলি কমপক্ষে বাউন্স করুন।
ব্রায়ান কার্পার

44

আপনি উল্লেখ করেছেন এটি আপনার ব্যক্তিগত ওয়েবসাইটের জন্য। আমার ব্যক্তিগত সাইটে (উদাহরণস্বরূপ, bobsomers.com) আমার কেবল একটি অনুচ্ছেদ রয়েছে যা এটি বলে:

নতুন সাইটটি শুরু হওয়ার আগে আমার সাথে যোগাযোগের সবচেয়ে ভাল উপায় হ'ল আমাকে ইমেল পাঠানো। এই ওয়েবসাইটটিতে আমার ইমেল ঠিকানাটি আমার প্রথম নাম। আপনি যদি সেই ইঙ্গিতটি থেকে বের করতে না পারেন, ভাল, আপনি আমার ঠিকানাটি সন্ধানের চেয়ে ইমেলটিকে একটি চ্যালেঞ্জের বেশি খুঁজে পেতে পারেন।

আমি সমস্ত সময় বৈধ ইমেল পাই বলে লোকেরা ঠিক এটি ঠিক করতে পারে বলে মনে হয়। কখনও কখনও সেরা সমাধানগুলির জন্য কোনও কোড লেখার প্রয়োজন হয় না। :)


7
এই পদ্ধতিটি আইকিউ সহ লোকেদের একটি নির্দিষ্ট স্তরের চেয়ে কম
পাপা জুলু

36

reCAPTCHA একটি সাধারণ ইমেল অবলম্বন পরিষেবা সরবরাহ করে । আপনার কোনও অ্যাকাউন্ট সেট আপ করার দরকার নেই এবং এটি অবিলম্বে এটি ব্যবহার শুরু করতে পারেন। আপনি পরিষেবাটি কোনও লিঙ্ক হিসাবে বা পপআপ হিসাবে ব্যবহার করতে পারেন।

ক্যাপচা সমাধান হওয়ার পরে, আপনার ইমেল ঠিকানাটি একটি href / mailto হিসাবে উপস্থিত হয়, যাতে এটি ক্লিক / অনুসরণ করতে পারে যা তাদের ব্রাউজারগুলির সাথে কাজ করার জন্য তাদের ইমেল ক্লায়েন্টদের কনফিগার করেছে।


এটি দুর্দান্ত এবং সময়ের 99.9% কাজ করবে। লিঙ্কের জন্য ধন্যবাদ। এটি যখন ব্যর্থ একটি ব্রাউজার স্বয়ংক্রিয় করতে ব্যর্থ হয়।
IEnumerator

9
আমি মনে করি না যে বেশিরভাগ ওয়েব ব্যবহারকারী কেবল কাউকে ইমেল করতে কোনও ক্যাপচা সমাধানের চেষ্টা করবেন।
অ্যান্ডিএম

7
আমি এ নিয়ে অ্যান্ডির সাথে আছি। ক্যাপচা একটি ব্যথা এবং রেক্যাপচা গড়ের চেয়ে আরও বড় ব্যথা কারণ এগুলি প্রায়শই পড়তে খুব কষ্ট হয় hard যদি লোকেরা আপনাকে ইমেল করে তা একটি রূপান্তর পয়েন্ট (উদাহরণস্বরূপ, গ্রাহকদের পরিষেবা সম্পর্কে জিজ্ঞাসা করার, আদেশ দেওয়ার বা একটি উক্তি জিজ্ঞাসা করার অনুমতি দেওয়া), আপনি তাদের পক্ষে এটি করা যথাসম্ভব সহজ করতে চান।
সিলভারড্রাগ

8
পরিষেবাটির আর অস্তিত্ব নেই।
sorin

গুগল Mailhide 31 মার্চ 2018 সাল থেকে বিরত করা হয়েছে
শন

18

hrefনোঙ্গরটিকে অবিচ্ছিন্ন করার একটি হালকা উপায় হ'ল এটি বেস 64-এনকোড:

> btoa('mailto:email@example.com')
< "bWFpbHRvOmVtYWlsQGV4YW1wbGUuY29t"

এবং তারপরে এটি হার্ডকডযুক্ত অন্তর্ভুক্ত করুন:

<a href="javascript:window.location.href=atob('bWFpbHRvOmVtYWlsQGV4YW1wbGUuY29t')">E-Mail</a>

অথবা গতিশীলভাবে সার্ভার-সাইড যেমন পিএইচপিতে:

<a href="javascript:window.location.href=atob('<?= base64_encode("mailto:email@example.com") ?>')">E-Mail</a>

স্ট্রিং রিভার্সনের সংমিশ্রণে এটি বেশ স্প্যাম-সেভ হতে পারে:

<a href="javascript:window.location.href=atob('<?= base64_encode("mailto:email@example.com") ?>')" style="unicode-bidi: bidi-override; direction: rtl;"><?= strrev("email@example.com") ?></a>

14

দৃশ্যত আপনার লেখার দিক পরিবর্তন করতে CSS ব্যবহার করা বেশ ভাল কাজ করে। সেই লিঙ্কটিতে অন্যান্য গুছানো পদ্ধতিরও একটি গুচ্ছের পরীক্ষা রয়েছে।

আপনি যা ব্যবহার করেন তা অনিবার্যভাবে পরাজিত হতে চলেছে। আপনার প্রাথমিক লক্ষ্যটি হ'ল আপনার ব্যবহারকারীদের থেকে বিরক্ত হওয়া হ্যাককে এড়ানো উচিত।


4
এই জিনিসপত্র কপি এবং পেস্ট সম্ভবত? আইআইআরসি
অ্যালেক্স

7
ঠিকানাটি অনুলিপি করা হবে, এটি পিছনের দিকে প্রদর্শিত হবে। এটি আপনার পক্ষে যোগাযোগ করা যতটা সম্ভব সহজ হতে চান ব্যবহারকারীদের জন্য এটি অফ-পপিং হতে পারে।
খ্রিস্টান দাভন

10

এখানে কোনও অবহেলা কৌশল ব্যবহার করবেন না কারণ সম্ভবত ইমেলটি কাটা লোকেরা কীভাবে ইমেলগুলিকে বিভ্রান্ত করছে তা খুঁজে বার করার জন্য ইমেলটি সংগ্রহকারীরা সম্ভবত এটিই প্রথম স্থানটি দেখবেন। সাইটে যদি আপনার ইমেল ঠিকানাটি দৃশ্যমান থাকে তবে কেবল ভারব্যাটিকাম অন্য কারও পদ্ধতির অনুলিপি করবেন না; এটিকে কিছু অনন্য উপায়ে অবিচ্ছিন্ন করুন যাতে অন্য কোনও সাইট ব্যবহার করেনি যাতে আপনার পদ্ধতিটি ফসল কাটা লোকেরা আপনার সাইটে দেখার আগে তাদের জানা না যায়।


8
কত পুনরাবৃত্তি।
পল টমলিন

আনলিনোকট: স্যাম হাসলারের অ্যানসওয়ার শীর্ষ উত্তরটি নির্বিশেষে প্রযোজ্য। সর্বাধিক জনপ্রিয় অবলম্বন কৌশলটি ব্যবহার করে আপনি কাটার সবচেয়ে সম্ভাব্য লক্ষ্য নিয়ে যাচ্ছেন।
চোখের পলকহীনতা

যদি না শীর্ষ উত্তরটি আসলে
অবরুদ্ধ

@ জোশ জোর্ডান: একমত হয়েছে, আমি আসলে আপনার উত্তরের পক্ষে ভোট দিয়েছি। আমার বক্তব্যটি হ'ল যে কোনও জনপ্রিয় আপত্তি কৌশল অবশেষে স্প্যামারদের দ্বারা লক্ষ্য করা যাবে এবং তারা এটিকে নিষ্ক্রিয় করার জন্য কোড লিখবে।
স্যাম হাসলার

2
বর্তমানে এই পৃষ্ঠাটি গুগল দ্বারা [অবচিত ইমেল ঠিকানা] এর জন্য ফিরিয়ে দেওয়া ২৮ তম ফলাফল, যদিও আমি আশা করি এটি শেষ পর্যন্ত আরও বেড়ে যাবে rise
স্যাম হাসলার

8

গুগল কোডে (এবং গোষ্ঠীগুলি) গুগল যেমন করত তেমন আপনি করতে পারেন। ইমেলের একটি সামান্য অংশ এবং ক্লিকযোগ্য অংশ ("...") প্রদর্শন করুন। ক্লিক করা যা ইঙ্গিত দেয় যে আপনি ইমেলটি জানতে চান এবং আপনাকে একটি ক্যাপচা পূরণ করতে বলা হয়। এর পরে ইমেল (এবং অন্যান্য?) আপনার কাছে দৃশ্যমান।


8

খনি আসলে সহজ:

<h3 id="email">hello@gmail.com</h3><!-- add a fake email -->


    $(document).ready(function(){
//my email in reverse :)
            var s = 'moc.elibomajninbew@htiek';
            var e = s.split("").reverse().join("");
            $('#email').html('<a href="mailto:'+e+'">'+e+'</a>');
    });

9
দরিদ্র লোক hello@gmail.com :) মালিক
duedl0r

2
জিমেইলে 5 টি অক্ষর সহ কোনও ইমেল নেই।
পাওলো নে

6

আমি জাভাস্ক্রিপ্ট অবলম্বন ব্যবহার করি, উদাহরণস্বরূপ এটি একবার দেখুন:

http://www.jottings.com/obfuscator/


2
-1: আপনি উত্পন্ন কোডটি দেখেছেন? এটি যদি আপনার ইমেল ঠিকানাটিকে "লিঙ্ক পাঠ্যে" অন্তর্ভুক্ত করে তবে এটি আপনার আপত্তিজনকভাবে আসে না এবং "মেইলটো:" দিয়ে এর উদ্দেশ্যকে সার্থক করে। সবচেয়ে খারাপ, এটি এমন একটি সমাধান যা জাভাস্ক্রিপ্টের প্রয়োজন, যা মূল বিষয়বস্তুর জন্য নির্ভর করা উচিত নয়।
চোখের পলকহীনতা

6

আমি রক্ষণ করি এমন একটি ওয়েবসাইট স্প্যামবটগুলি বাইরে রাখার (আশাবাদী) কিছুটা সরলাত্মক জাভাস্ক্রিপ্ট ব্যবহার করে।

ইমেল লিঙ্কগুলি একটি জেএস ফাংশনকে কল করে:

ফাংশন সেন্ডইমেল (নাম, ডোমেন) {
    অবস্থান.href = 'মেলটো:' + নাম + '@' + ডোমেন;
}

কেবলমাত্র জেএস সক্ষম থাকা ব্যবহারকারীরা এই লিঙ্কটি দেখতে পাবে তা নিশ্চিত করার জন্য, তাদের সাথে এটি লিখে দিন:

ফাংশন WritEmailLink (আসল নাম, নাম, ডোমেন) {
    document.write ('<a href = "জাভাস্ক্রিপ্ট: সেন্ডইমেল (E' '
      + নাম + '\', \ '' + ডোমেন + '\') "> ');
    document.write (realName);
    document.write ( '</a>');
}   

একটি জেএস ফাংশন ব্যবহার করে এমন লিঙ্ক লিখতে বলা হয় যাতে অন্যটিকে ডাকা হয় এর অর্থ হল সুরক্ষার দুটি স্তর রয়েছে।


4

উপরের পোস্টার হিসাবে বলা হয়েছে, আমি জটিংস ওয়েবসাইট থেকে জাভাস্ক্রিপ্ট অবলম্বনও ব্যবহার করি ।

ওয়েব পৃষ্ঠাটি কিছু জাভাস্ক্রিপ্ট তৈরি করেছে যা উন্নত করা যেতে পারে। mailto:টেক্সট স্ট্রিং হয় স্পষ্ট এবং রোবট দ্বারা শনাক্তযোগ্য (যা এই স্পট এবং এই স্ট্রিং unobfuscate পারে), কিন্তু যদি এক ফর্মের jottings.com ওয়েবপেজ একটি ইমেল ঠিকানা প্রবেশ mailto:addr@site.tldপরিবর্তে addr@site.tldএবং তারপর টেক্সট সরিয়ে ফেলা হবেmailto:তৈরি হওয়া জাভাস্ক্রিপ্ট থেকে হঠাৎ করেই এমন কিছু জাভাস্ক্রিপ্ট রয়েছে যা এটি ইমেলের সাথে কিছু করার মতো মনে হয় না - কেবল র্যান্ডম জাভাস্ক্রিপ্ট যা ওয়েব পূর্ণ। লিঙ্কের পাঠ্য থেকে মুক্তি পেয়ে কেউ এটিকে আরও উন্নত করতে পারে - আমি আমার ইমেল ঠিকানার একটি চিত্র দিয়ে আমার প্রতিস্থাপন করেছি যা মোটামুটি অস্পষ্ট ফন্টে রয়েছে। তারপরে jottings.com এ এই পদ্ধতিটি জনপ্রিয় হয়ে উঠলে আমি জাভাস্ক্রিপ্ট আউটপুটটিতে পরিবর্তনশীল নামগুলিকে এলোমেলো করে দিয়েছিলাম যে কোনও রোবোট জাভাস্ক্রিপ্ট কোড উত্পন্ন জোটিংয়ের একটি উদাহরণ খুঁজে পাবে না।

স্পষ্টতই এগুলির কিছু উন্নতি নিজেই জোটিংয়ের প্রক্রিয়াতে তৈরি করা যেতে পারে এবং কোডটি প্রকাশ্যে উপলভ্য হওয়ায় এটি তুলনামূলক সহজ।

একটি উদাহরণ এটি কিছুটা আরও পরিষ্কার করে দিতে পারে। "জোড়িংস ওবফাসেকেটরকে উপরের লিঙ্কটিতে অস্পষ্ট করার জন্য আমি ব্যবহার করেছি mailto:foo@bar.com(নোট আমি জোতিংস ওয়েবসাইটের মূল উদ্দেশ্যটি প্রতারণা করছি " এর mailto:foo@bar.comপরিবর্তে স্ট্রিংটি foo@bar.comপ্রেরণ করুন) "পাঠান আমাকে ইমেল করুন" পাঠ্য সহ, যা এই জাভাস্ক্রিপ্টে রূপান্তরিত করেছিল:

<script type="text/javascript" language="javascript">
<!--
// Email obfuscator script 2.1 by Tim Williams, University of Arizona
// Random encryption key feature by Andrew Moulden, Site Engineering Ltd
// This code is freeware provided these four comment lines remain intact
// A wizard to generate this code is at http://www.jottings.com/obfuscator/
{ coded = "3A1OTJ:rJJ@VAK.GJ3"
  key = "J0K94NR2SXLupIGqVwt8EZlhznemfaPjs7QvTB6iOyWYo3rAk5FHMdxCg1cDbU"
  shift=coded.length
  link=""
  for (i=0; i<coded.length; i++) {
    if (key.indexOf(coded.charAt(i))==-1) {
      ltr = coded.charAt(i)
      link += (ltr)
    }
    else { 
      ltr = (key.indexOf(coded.charAt(i))-shift+key.length) % key.length
      link += (key.charAt(ltr))
    }
  }
document.write("<a href='mailto:"+link+"'>Send Me Email</a>")
}
//-->
</script><noscript>Sorry, you need Javascript on to email me.</noscript>

আমি এটি ফিরে পাওয়ার পরে, আমি এডিটরটিতে এটি আটকান এবং:

  1. অপসারণ mailto:
  2. লিঙ্ক পাঠ্যটি আমার ইমেল ঠিকানার একটি ইমেজে পয়েন্টারের সাথে প্রতিস্থাপন করুন
  3. সমস্ত ভেরিয়েবলের নতুন নাম দিন
  4. ইমেল ঠিকানা চিত্রের অন্য লিঙ্কের সাথে "নোগ্রিপ্ট" বিভাগটি প্রতিস্থাপন করুন

আমি এটি দিয়ে শেষ:

<script type="text/javascript" language="javascript">
<!--
// Email obfuscator script 2.1 by Tim Williams, University of Arizona
// Random encryption kkeoy feature by Andrew Moulden, Site Engineering Ltd
// This kudzu is freeware provided these four comment lines remain intact
// A wizard to generate this kudzu is at http://www.jottings.com/obfuscator/
{ kudzu = "3A1OTJ:rJJ@VAK.GJ3"
  kkeoy = "J0K94NR2SXLupIGqVwt8EZlhznemfaPjs7QvTB6iOyWYo3rAk5FHMdxCg1cDbU"
  shift=kudzu.length
  klonk=""
  for (variter=0; variter<kudzu.length; variter++) {
    if (kkeoy.indexOf(kudzu.charAt(variter))==-1) {
      lutu = kudzu.charAt(variter)
      klonk += (lutu)
    }
    else {
      lutu = (kkeoy.indexOf(kudzu.charAt(variter))-shift+kkeoy.length) % kkeoy.length
      klonk += (kkeoy.charAt(lutu))
    }
  }
document.write("<a href='"+klonk+"'><img src='contactaddressimage.png' alt='Send Me Email' border='0' height='62' width='240'></a>")
}
//-->
</script>
<noscript>
    <img src="contactaddressimage.png" border="0" height="62" width="240">
    <font face="Arial" size="3"><br>&nbsp;</font></p>
</noscript>

3

আমি জানি না যে এটি কতটা ভাল কাজ করবে। পৃষ্ঠার লোডিং শেষ হয়ে গেলে আপনি নিজের ইমেল ঠিকানাটি বাইরে রেখে এজেএক্স কল ব্যবহার করে এটিকে লোড করতে পারবেন না। স্প্যামের বটগুলি পরিবর্তিত এইচটিএমএল তুলতে পারে কিনা বা ইমেল ঠিকানাগুলি বেছে নেওয়ার জন্য অন্য এইচটিটিপি ট্র্যাফিকের উপর শুনতে যথেষ্ট চালাক হলে বা প্রথমবারের মতো এটি কেবল পৃষ্ঠাটি স্ক্যান করার পরে তা নিশ্চিত নয়।


এজেএক্স ইমেল লোডিং বাস্তবায়ন বাস্তবায়নে সময় ব্যয় করেছে: 3 দিন। স্প্যামে সময় সাশ্রয় করা আপনার মুছতে হবে না: 17 মিনিট।

2

একজন লোক কোনও পৃষ্ঠায় ইমেল ঠিকানা উপস্থাপনের নয়টি বিভিন্ন উপায়ে পরীক্ষা করেছে এবং তারপরে তার ব্লগে ফলাফল প্রকাশ করেছে

তার তিনটি সেরা উপায় ছিল:

  1. সিএসএসের সাহায্যে কোডের দিকনির্দেশ পরিবর্তন করা
  2. সিএসএস প্রদর্শন ব্যবহার করে: কিছুই নেই
  3. ROT13 এনক্রিপশন

Caveat - এই পোস্ট করা হয়েছিল দুই বছর আগে। স্প্যাম বটগুলি আরও স্মার্ট হয়ে উঠতে পারে।


1

আপনি যদি পিএইচপি দিয়ে কাজ করেন তবে আপনি একটি ফ্রি স্ক্রিপ্ট দখল করতে পারেন যা স্বয়ংক্রিয়ভাবে তা করে। এটিকে "ব্যক্তিগত বাবা" বলা হয় এবং আমরা এটি আমাদের নিজস্ব অনলাইন অডিও স্ট্রিমিং পরিষেবার জন্য ব্যবহার করি। কোডের এক লাইন এবং এটি বাক্সের বাইরে চলে যায় ... আপনি এটি এখানে ধরতে পারেন


আমি জানতে চাই যে কেন কেউ এটিকে হ্রাস করেছেন। এটি ব্যাখ্যা করতে সহায়ক হবে।
ইয়ান্নিস শ্রান

1

একটি জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক ব্যবহার করে এবং এইচটিএমএল উপাদানগুলিতে ডেটা / মডেলকে বাঁধাই করার মাধ্যমে আরেকটি পদ্ধতি হতে পারে। অ্যাঙ্গুলারজেএস-এর ক্ষেত্রে এইচটিএমএল উপাদানগুলি এইভাবে লেখা হবে:

<a href="mailto:{{contactEmail}}"><span>{{contactEmail}}</span></a>

ইন্টারপোলেশন {{ডেটা}} বাইন্ডিংটি স্কোপ ভেরিয়েবল ব্যবহার করে যা প্রকৃত ইমেল মান ধারণ করে। এছাড়াও, এমন একটি ফিল্টারও ব্যবহার করা যেতে পারে যা ইমেলটির ডিকোডিংটি নিম্নরূপ পরিচালনা করে:

<a href="mailto:{{contactEmail | decode}}"><span>{{contactEmail | decode}}</span></a>

সুবিধাগুলি এইচটিএমএল লিখিতভাবে হয়। খারাপ দিকটি হ'ল এর জন্য স্ক্রিপ্টিং সমর্থন দরকার যা কিছু লোকের জন্য নং হতে পারে।

শুধু অন্য পদ্ধতির।


1

জিকিউরি ব্যবহার করে তবে প্রয়োজনে সহজেই প্লেইন জেএসে পোর্ট করা যায়। নিম্নলিখিত এইচটিএমএল ব্লক গ্রহণ করবে। আমি সরবরাহ করা এই উদাহরণটি tel:ফোন কলগুলির লিঙ্কগুলির জন্যও ।

<a class="obfuscate" 
 href="mailto:archie...trajano...net">
 archie...trajano...net
</a>
<a class="obfuscate"
 href="tel:+One FourOneSix-EightFiveSix-SixSixFiveFive">
 FourOneSix-EightFiveSix-SixSixFiveFive
</a>

এবং এটি জাভাস্ক্রিপ্ট ব্যবহার করে সঠিক লিঙ্কগুলিতে রূপান্তর করুন।

$ ("। obfuscate")। প্রতিটি (ফাংশন () {

$ (এই) .html ($ (এই) .html ()
.replace ("...", "@")। প্রতিস্থাপন করুন (/\.\.\./ g, "।")
.রেপ্লেস (/ ওয়ান / জি, "1")
.রেপ্লেস (/ দুই / জি, "2")
.রেপ্লেস (/ তিন / জি, "3")
.replace (/ চার / জি, "4")
.রেপ্লেস (/ পাঁচ / ছ, "5")
.replace (/ ছয় / ছ, "6")
.replace (/ সাত / ছ, "7")
.replace (/ আট / ছ, "8")
.রেপ্লেস (/ নাইন / জি, "9")
.রেপ্লেস (/ জিরো / জি, "0"))

$ (এটি) .attr ("href", $ (এটি) .attr ("href")
.replace ("...", "@")। প্রতিস্থাপন করুন (/\.\.\./ g, "।")
.রেপ্লেস (/ ওয়ান / জি, "1")
.রেপ্লেস (/ দুই / জি, "2")
.রেপ্লেস (/ তিন / জি, "3")
.replace (/ চার / জি, "4")
.রেপ্লেস (/ পাঁচ / ছ, "5")
.replace (/ ছয় / ছ, "6")
.replace (/ সাত / ছ, "7")
.replace (/ আট / ছ, "8")
.রেপ্লেস (/ নাইন / জি, "9")
.রেপ্লেস (/ জিরো / জি, "0"))

})

আমি এটিকে এখানে আরও বিশদে ডকুমেন্ট করেছি https://trajano.net/2017/01/obfuscating-mailto-links/

ডি / অবফেসেশন অ্যালগরিদমটি খুব সহজ তাই এটি লিখতেও খুব বেশি ট্যাক্স নয় (বেস 64 পার্সিংয়ের প্রয়োজন নেই)


1

Ajax কল সমাধান

ওয়েবসাইটটিতে একটি ফর্ম থাকা এবং ইমেল ঠিকানা না দেখাই ভাল, কারণ সমস্ত রোবট দিনের পর দিন আরও বুদ্ধিমান হয় তবে আপনাকে যদি ওয়েবসাইটটিতে ইমেল ঠিকানা দেখাতে হয় তবে আপনার এজেজ্যাক কল দিয়ে আপনি এটি করতে পারেন সার্ভার, এবং ক্লিক এ এটি প্রদর্শন করুন।

এইচটিএমএল

<a class="obfmail" href="#" rel="info">click here to show email address</a>

অথবা

<a class="obfmail" href="#" rel="info">
    <img src="img/click-to-show-email.jpg">
</a>

jQuery এর

$(document).one'click', '.obfmail', function(e) {
    e.preventDefault();
    a = $(this);
    addr = a.attr('rel');
    $.ajax({
        data: { 
            email: addr
        },
        url : "/a/getemail",
        type: "POST",
        dataType: 'json',
        success: function(data) {
            a.html(data.addr);
            a.attr('href', 'mailto:' + data.addr);
        }
    });
});

পিএইচপি

if($_POST['email']) {
    ...
    return json_encode(array(
        code     => '200',
        response => 'success',
        addr     => 'info@domain.ltd'
    ));
}

আরো নিরাপত্তার জন্য, আপনি পরিবর্তন করতে পারেন .onদ্বারা .oneভালো $(document).one('click', '.obfmail', function(e) {বা পিএইচপি এমনকি কাজ টোকেনটি উৎপাদিত আপনি Ajax কল ডেটা মধ্যে পাস, ভালো Ajax ফাংশন শুধুমাত্র একটি কল গ্রহণ করতে:

এইচটিএমএল: <a class="obfmail" href="#" rel="info" token="w3487ghdr6rc">

jQuery:

...
addr = a.attr('rel');
tkn  = a.attr('token');
$.ajax({
    data: { 
        email: addr,
        token: tkn
    }, ...

ফিরে আসা ইমেল ঠিকানাটি খুব এনকোড করা বা এটি উল্টানো সম্ভব।

ফোন নম্বর জন্য খুব ভাল কাজ!


0

সত্যি বলতে কী, আপনি যদি কোনও মেইলটো সত্যই ব্যবহার করতে চান তবে তা যদি আপনার প্রশ্নটি জিজ্ঞাসা করে তবে আপনার সমস্যাটি মোটা হতে পারে। উদাহরণস্বরূপ, বা ওয়েব ব্রাউজারে সঠিক মেইল ​​ক্লায়েন্ট সেটআপ না থাকা অনেক লোকই কোনও মেইলটো থেকে উপকৃত হচ্ছেন না। আপনি এমন কোনও ফাংশনের জন্য আপনার ইমেল ঠিকানাটি প্রকাশ করছেন যা আপনার ব্যবহারকারীর একটি বড় অংশের জন্য কাজ করবে না।

পরিবর্তে আপনি যা করতে পারেন তা হ'ল পর্দার আড়ালে ই-মেইল প্রেরণের জন্য একটি ফর্ম ব্যবহার করুন যাতে ই-মেইল ঠিকানাটি লুকিয়ে থাকে এবং আপনাকে যে দরিদ্র স্যাপগুলি কোনও মেইলটো থেকে উপকৃত হবে না সে সম্পর্কে চিন্তা করতে হবে না।


0

যদি আপনি আপনার সাইটে বলেন যে "আমার ই-মেইল ঠিকানাটি (আমার প্রথম নাম) @ (আমার শেষ নাম)। কম।") Your আপনি পেতে যাচ্ছেন।


পূর্ণাঙ্গ ইমেলগুলিতে প্রথম বন্ধনীগুলি অনুমোদিত নয়? মনে হচ্ছে এটি একটি বৈধ ইমেল ঠিকানা হতে পারে। : পি
Kzqai

1
স্প্যামের বটগুলি আপনার ইনবক্সটি মিস করবে এমন অন্য কারণ। :-)
ডিন জে

0

যদি কেউ রেল ব্যবহার করে তবে তারা actionview-encoded_mail_toরত্নটি ব্যবহার করতে পারেন । ( https://github.com/reed/actionview-encoded_mail_to )

কয়েকটি অপশন আছে:

: এনকোড - এই কীটি "জাভাস্ক্রিপ্ট" বা "হেক্স" স্ট্রিং গ্রহণ করবে। "জাভাস্ক্রিপ্ট" পাস করার ফলে মেলটো লিংকটি গতিশীলভাবে তৈরি এবং এনকোড হবে তারপরে এটি পৃষ্ঠার ডোম-তে প্রকাশিত হবে। যদি ব্যবহারকারী জাভাস্ক্রিপ্ট অক্ষম করে থাকে তবে এই পদ্ধতিটি পৃষ্ঠায় লিঙ্কটি প্রদর্শন করবে না। "হেক্স" পাস করলে হেক্স মেলটো লিঙ্কটি আউটপুট দেওয়ার আগে ইমেল_এড্রেসকে এনকোড করবে।

: edit_at - লিঙ্কের নামটি সরবরাহ করা না হলে, লিঙ্ক লেবেলের জন্য ইমেল_ড্রেস ব্যবহার করা হয়। মান হিসাবে দেওয়া স্ট্রিংয়ের সাথে @ চিহ্নটি প্রতিস্থাপন করে আপনি এই বিকল্পটি ইমেল_এড্রেসকে অবলম্বন করতে ব্যবহার করতে পারেন।

: প্রতিস্থাপন_ডট - লিঙ্কের নামটি সরবরাহ করা না হলে, লিঙ্ক লেবেলের জন্য ইমেল_ড্রেস ব্যবহার করা হয়। আপনি এই বিকল্পটি ব্যবহার করে ইমেল_এড্রেসকে অস্পষ্ট করতে ব্যবহার করতে পারেন। মান হিসাবে দেওয়া স্ট্রিং সহ ইমেল এ।


0
<!-- Multi-Email Obfuscator  -->
<!-- step 1: &#064; = @  -->
<!-- step 2: a scrap element  -->
<!-- step 3: ROT13 encode for .com  -->
info<!-- step 1 -->&#064;<!-- step 2 --><b style="display:none">my</b>domain<!-- step 3 --><script>document.write(".pbz".replace(/[a-zA-Z]/g,function(c){return String.fromCharCode((c<="Z"?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);}));</script>


0

যেহেতু এই সমাধানটি কোথাও উল্লেখ করা হয়নি তবে এটি আমার পক্ষে ভাল কাজ করে:

আমি এই কাজ:

  • জাল ইমেল সহ একটি মেইলটো লিঙ্ক তৈরি করুন। আমি স্পষ্ট কারণে অ্যাডমিন@localhost.localdomain পছন্দ করি: স্প্যামার এই ঠিকানাটি পরীক্ষা না করা ব্যবহার করার সময় তার নিজের বোটনেট স্প্যাম করতে পারে।

  • সাইফার আসল ইমেল ঠিকানা এবং এটি কোনও সম্পর্কিত নয় তবে সন্ধানযোগ্য গোপন স্প্যান বা আপনার পছন্দ মত উপাদানগুলিতে রাখুন। স্পষ্টতই ইমেলটিকে অস্পষ্ট করা এবং ফসল কাটার থেকে আড়াল করা। আপনার প্রকল্পের কাঠামোর উপর নির্ভর করে আপনি এটিকে কোনও জেএস বা সেশন ভেরিয়েবলের মধ্যে রাখতে চান।

  • এই লিঙ্কগুলির জন্য একটি সেকেন্ডের পরে একটি ক্লিক হ্যান্ডলার তৈরি করুন যা ডিক্রিফার করে এবং জাল মেইলটো লিঙ্কে সঠিক ইমেল ঠিকানাটি লিখুন ডিফল্টগুলি রোধ করে না। আমি মনে করি না যে ক্রলাররা মেলটো লিঙ্কগুলিতে ক্লিক করে, তবে তারা যদি এটি করে তবে তারা সম্ভবত দ্বিতীয়টি অপেক্ষা করবে না, অন্যদিকে একজন মানুষকে পেজলোডের পরে প্রথম দ্বিতীয়টিতে একটি লিঙ্ক ক্লিক করতে চূড়ান্তভাবে দ্রুত হতে হবে।

এখন আপনার সম্পূর্ণরূপে কার্যকরী তবে অবহেলিত, হনিপোটেড এবং টাইমসিকিউরড মেলটো লিঙ্ক রয়েছে।

কাজের উদাহরণ পিএইচপি ফাইল:

<html>
<head>
<title>E-Mail Obfuscating</title>
</head>
<body>
<?php
$email = "example@email.org";
echo "<a class='emailLink' href='mailto:admin@localhost.localdomain' >Send me an e-mail!</a>"
    ."<span style='display:none' data-hash='" . base64_encode($email) . "' />";
?>
<script>
<!--
var emailLinks = document.getElementsByClassName("emailLink");
setTimeout(function() {
    for(var i=0; i <emailLinks.length; ++i){
        emailLinks[i].addEventListener("click", function(){
            let encodedEmail = this.nextSibling.getAttribute('data-hash');
            let decodedEmail = atob(encodedEmail);
            this.href = "mailto:" + decodedEmail;
            this.text = decodedEmail;
        });
    }
}, 1000);

-->
</script>
</body>
</html>

কোডটি আপনার সাথে থাকুক।


0

কোনও পাসওয়ার্ড দ্বারা সুরক্ষিত ডিরেক্টরিকে নির্দেশ করে "আমার সাথে যোগাযোগ করুন" একটি লিঙ্ক তৈরি করা হলে কী হবে? অবশ্যই আপনাকে প্রবেশের পাস দিতে হবে।

"আমার সাথে যোগাযোগ করুন"> •••••••••••> যোগাযোগ / সূচী। Html

একবার অ্যাক্সেস হয়ে গেলে, পরিচিতি / সূচক html পৃষ্ঠাটি ইমেলটি প্রকাশ করে, উদাহরণস্বরূপ একটি মেইলটো।


-1

আমি পৃষ্ঠা লোডে ইমেল আউটপুট করতে কিছু জাভাস্ক্রিপ্ট তৈরি করতে একটি পিএইচপি ফাংশন ব্যবহার করি । নোট করুন যে রানটাইমে জেএস তৈরি করতে আপনার পিএইচপি দরকার নেই , আপনি একবার স্থানীয়ভাবে জেএস তৈরি করতে পারেন এবং তারপরে আপনার পৃষ্ঠায় স্থির জেএস অন্তর্ভুক্ত করতে পারেন।

আপনি প্রদত্ত কিছু এইচটিএমএল (যেখানে sed ​​প্রসেসড কনটেন্ট এইচটিএমএল) তে স্বয়ংক্রিয়ভাবে ইমেল ঠিকানাগুলি অপসারণ করতে নীচে এই স্নিপেটের সাথে লিঙ্কযুক্ত ফাংশনটিও ব্যবহার করতে পারেন:

 $emailMatches = array();
 $matchCount = preg_match_all('/(?:[a-zA-Z0-9_\.\-])+\@(?:(?:[a-zA-Z0-9\-])+\.)+(?:[a-zA-Z0-9]{2,4})+/', $processedContent, $emailMatches);

 if($matchCount > 0) {
    $emailMatches = $emailMatches[0];

    foreach($emailMatches as $email) {
    $replacement = createJSMailLink($email);

    $processedContent = str_replace($email, createJSMailLink($email), $processedContent);
 }

আপনি কোথায় জেএসমেললিংক সংজ্ঞা দিয়েছেন ()?
স্টিলিয়ান

-2

পরীক্ষা করে দেখুন এই বাইরে।

'এনকোডার ফর্ম' আপনার ইমেল ঠিকানাটি এনক্রিপ্ট করবে এবং ফলটিকে স্ব-মূল্যায়ণকারী জাভাস্ক্রিপ্টে রূপান্তর করবে, এটি ইমেল-কাটা রোবট থেকে গোপন করবে যা উন্মুক্ত ঠিকানাগুলির জন্য ওয়েবকে ক্রল করে। আপনার ঠিকানাটি ওয়েব ব্রাউজারগুলির দ্বারা সঠিকভাবে প্রদর্শিত হবে, তবে ইমেল কাটা রোবটগুলির পক্ষে কার্যত অনিবার্য।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.