it-gundan.com

웹 사이트에 "연락처"전자 메일 주소를 나열하면서 스팸 가능성을 줄이는 방법은 무엇입니까?

웹 사이트에 "문의하기"전자 메일 주소를 나열하고 스팸 가능성을 줄이려면 어떻게해야합니까?

이메일 주소를 이미지에 넣는 것이 가장 좋은 방법입니까, 아니면 다른 방법이 있습니까?

70
Chris W. Rea

이메일을 실제 이메일 주소로 전달하는 일회용 Gmail 계정을 통해 모든 문의 양식을 전달합니다. 무료이며 쉬우 며 Gmail 스팸 탐지는 최고입니다.

웹 사이트를 만들 때 추가 노력이 필요하지 않으며, 문제가 발생하면 Gmail 계정에 로그인하여 스팸으로 신고하십시오.

그런 다음 전달 된 모든 내용을 자동으로 보관하거나 추가 사본을 보관하지 않으려면 삭제하도록 Gmail받은 편지함을 설정할 수 있습니다.

54
Callan
30
Jason

내 대답은 이것을하지 않는 것입니다. GMail 및 바라쿠다 안티 스팸 어플라이언스와 같은 최신 이메일 시스템은 스팸 필터링을 훌륭하게 수행합니다. 귀하와 방문자 사이의 장벽은 참여 수준이 낮고 사이트 유형에 따라 잠재적 인 판매 손실을 의미합니다.

기본 메일 클라이언트가 설치되지 않은 사용자 또는 mailto : 핸들러가 올바르게 설정되지 않은 사용자에 대해 걱정되는 경우 연결된 전자 메일 주소와 양식이있는 연락처 페이지 (CAPTCHA 없음) 및 사용자가 선택하게하십시오.

스팸은 성가 시지만 사용자가 아닌 부담해야합니다.

20
JasonBirch

이메일 주소를 철자하기 위해 자연어를 사용하십시오 ...

전의:

thatguy at gmail dot com

자연어를 구별 할 수있는 봇을 작성하는 것과 @ 기호 만 검색하여 일반 주소를 정규식으로 사용하는 봇을 작성하는 것이 얼마나 어려운지 놀랄 것입니다.

100 % 완전하지는 않지만 난독 화보다 나쁘지 않으며 시각 장애가있는 사용자 및/또는 JavaScript가 비활성화 된 사용자를 소외시키지 않습니다.

업데이트 : 이 기술의 예는 다음과 같습니다 .

업데이트 2 :

누군가가 실제로 이것에 대해 조사를하여 온라인에 게시 한 것으로 나타났습니다. 결과를 설명하는 수퍼 유저 게시물 또는 원본 기사 참조

18
Evan Plaice

개인적으로, 나는 사이트에 이메일 주소를 표시하지 않지만, 이메일을 보낸 사람의 표시와 함께 사용하기 쉽고 접근하기 쉬운 문의 양식을 가지고 있습니다. 사용자가 이메일 주소를 노출하거나 다양한 JavaScript 후프 등을 뛰어 넘지 않고도 사이트 소유자 및 운영자에게 이메일을 보낼 수 있습니다.

스팸 필터링이 그렇게 정교하지 않은 경우 가장 좋은 방법입니다.

12

cSS를 사용하여 실제 텍스트에서 약간의 노이즈를 숨기십시오 (한 줄에 모두 기술을 더 잘 설명하기 위해 형식을 지정했습니다).

u<span class="spam">noise</span>ser
@<span class="spam">noise</span>
example<span class="spam">noise</span>
.com

그런 다음이 작은 CSS 조각을 사용하십시오.

.spam { display: none; }

유효한 mailto: 컨텐츠가 필요하면 dom에서 jscript를 통해 컨텐츠를 작성해야합니다. 이에 대한 다른 답변을 참조하십시오. 그러나 나는 그것의 큰 친구가 아닙니다.

9
akira

내가하는 것은 전자 우편 주소를 단어로 쓰고 <span class="email">joe dot blow at gmail dot com</span>로 묶인 태그로 작성하는 것입니다. 그런 다음 페이지 수준 스크립트가 실행되어 이러한 범위를 잡고 각각을 구성된 전자 메일 링크로 바꿉니다. 너무 모호하지는 않지만 불만은 없습니다. 또한 JavaScript가 비활성화 된 경우에도 실제 범위 텍스트를 읽을 수 있습니다.

8
Grant Palin

가장 좋은 해결책 : 스팸 필터 사용.

다른 컴퓨터에서 이메일을 확인하는 것이 훨씬 쉽기 때문에 실제로 Gmail을 사용하여 내 비즈니스의 POP3 이메일 계정을 처리합니다. Gmail의 스팸 필터는 세계 최고입니다.

따라서 [email protected]을 이메일 주소로 표시하고 스팸을 잊어 버리면됩니다.

8
DisgruntledGoat

&#649&#7854&#7575와 같은 html 인코딩을 사용하면 브라우저가 "abc"처럼 렌더링합니다

7
ilhan

완벽하지는 않지만 Javascript를 통해 전자 메일 주소를 만드는 것이 좋습니다. 이메일을 찾는 대부분의 스파이더는 자바 스크립트를 실행하지 않으므로 읽을 수있는 이메일 주소를 찾지 못합니다.

Here 는 그 일을 수행하는 방법의 한 예일뿐입니다.

5
txwikinger

전자 메일 주소가 포함 된 .png 이미지를 동적으로 만들려면 그래픽 라이브러리 (예 : PHP 또는 이와 유사한 것으로 Gd 와 같은)를 사용하십시오.

나의 다른 대답과 비교 이 솔루션은 사용자에게 덜 성가시다 (투명하지는 않지만 복사하여 붙여 넣을 수는 없지만 처음부터 다시 입력해야 함). 명확하지 않은 이미지를 읽을 수 있습니다.

그러나 전반적으로 좋은 타협이라고 생각합니다. 대부분의 스팸 봇을 중지시킵니다.

5
Thomas Bonini

간단한 Python 스크립트를 사용하여 전자 메일 주소를 전자 메일 주소가 HTML 엔터티로 인코딩 된 mailto 링크로 변환합니다. 이것은 사용자에게는 완전히 투명하지만 대부분의 단순한 수확 봇을 물리 치기에 충분한 내용을 모호하게하는 것 같습니다.

#! /usr/bin/env python3.0

def entity_encode(text):
    out = ""
    ba = text.encode()
    for i in range(len(ba)):
        out = out + "&#x{0:02x};".format (ba[i])
    return out

def print_email_link(address) :
        print('<!-- {0} -->'.format(address))
        print('<a href="{0}{1}">{1}</a>'.format(entity_encode("mailto:"), entity_encode(address)))


print_email_link("[email protected]")

이것은 출력을 제공합니다

<!-- [email protected] -->
<a href="&#x6d;&#x61;&#x69;&#x6c;&#x74;&#x6f;&#x3a;&#x74;&#x65;&#x73;&#x74;&#x31;&#x32;&#x33;&#x40;&#x65;&#x78;&#x61;&#x6d;&#x70;&#x6c;&#x65;&#x2e;&#x63;&#x6f;&#x6d;">&#x74;&#x65;&#x73;&#x74;&#x31;&#x32;&#x33;&#x40;&#x65;&#x78;&#x61;&#x6d;&#x70;&#x6c;&#x65;&#x2e;&#x63;&#x6f;&#x6d;</a>

결과를 웹 페이지에 붙여 넣으면 브라우저에 "[email protected]"텍스트가 "mailto : [email protected]"의 하이퍼 라인으로 표시되므로 최종 사용자에게 주소를 포함하는 것만 큼 편리합니다 분명하게. 그러나 많은 수확 봇을 물리 치는 것 같습니다.

분명히, 난해한 이메일 링크를 웹 페이지 HTML 소스의 적절한 지점에 붙여 넣으면 주소의 일반 ASCII 버전으로 주석을 삭제합니다.

5
Stephen C. Steel

이메일 주소를 표시하기 전에 (또는 문의 양식이있는 경우 사용자가 제출하기 전에) 보안 문자를 해결하도록 사용자에게 요청하십시오.

사용자에게는 가장 성가 시지만 확실히 가장 효과적입니다.

4
Thomas Bonini

저는 이메일 주소가 본질적으로 Javascript로 렌더링되는 난독 화 팬입니다.

예를 들어 [email protected]는 다음과 같이 렌더링 될 수 있습니다.

<a href="javascript:location='mailto:\u006d\u0079\u0040\u0065\u006d\u0061\u0069\u006c\u002e\u0063\u006f\u006d';void 0">
<script type="text/javascript">document.write('\u006d\u0079\u0040\u0065\u006d\u0061\u0069\u006c\u002e\u0063\u006f\u006d')</script></a>

사용자와 관련하여 일반적인 텍스트이며 복사하여 붙여 넣을 수 있습니다. 반면에 봇은 시간이 좀 더 걸릴 것입니다.

다음은 obfuscator 사용했습니다.

3
Paperjam

일방 통행:

_  <script language="javascript"> 
  <!--
  var name = "user"
  var Host1 = "gm"
  var Host2 = "ail.com"
  var addr =
  document.write("<a href=mai" + "lto:" + 
    name + "&#64;" + Host1 + Host2 +
    ">" + name + "&#64;" + Host1 + Host2 + "</a>")
  //-->
 </script> 
_

자바 스크립트를 끈 사용자의 경우 <noscript> 태그에 "내 이메일을 해독하십시오 : com dot gmail의 사용자"를 쓸 수 있습니다. 이렇게하면 하이퍼 링크 기능을 사용할 수 있습니다. 스팸 메일을 사용자의 주소에서 멀리 떨어 뜨릴 수 있으며 자바 스크립트가 꺼져 있거나 텍스트 만있는 브라우저를 사용하는 사람은 여전히 ​​전자 메일 주소를 얻을 수 있습니다.

2
Adam

많은 사람들이 당신에게 연락하면 세계의 모든 난독 처리 기술은 장기적으로 도움이 될 수 없습니다. 모든 사람이 메시지를 삭제하고 나중에받은 편지함/보낸 메일/주소록/올바른 주소를 검색하고 주소가 목록에서 목록으로 전달되는 멀웨어에 감염 될 수 있습니다. [저는 가장 바보 같은 이유로 온라인 양식에 전자 메일 주소와 암호를 넣을 수있는 어리석은 연락처를 가지고 있습니다. 아마도 가장 최신 정보는 누군가의 "전자 메일 점성술 차트 및 예측"을 계산하는 사이트였습니다. 같은 사이트로의 초대로 모든 바보의 연락처를 즉시 스팸했고 <deity>는 현재 우리가 어떤 다른 목록을 가지고 있는지 알고 있습니다.].

내 공개 웹 사이트의 주소는 단순한 버림받은 주소가 아니라 버림받은 하위 도메인에 있습니다. 해당 하위 도메인에서 스팸을 받기 시작하면 새 도메인을 만들고 연락처 세부 정보가 나열된 사이트를 업데이트 한 다음 잠시 후 DNS 레코드에서 하위 도메인을 완전히 제거합니다. 이 작업이나 다른 일회용 주소 기술을 사용하는 경우 향후 주소가 변경 될 것임을 사람들이 알 수 있는지 (주소를 나열한 페이지와 해당 주소를 사용하여 보내는 메일의 바닥 글에) 명확하게하십시오 통과하지 않으면 올바른 주소를 가지고 있는지 다시 확인해야합니다.

이것은 사람들이 나중에 주소를 편집하기 위해 두뇌를 사용할 필요없이 클릭하거나 (브라우저 + 메일러가 링크 된 경우) 복사 + 붙여 넣기를 할 수있는 간단한 주소라는 이점이 있습니다 (언제나 많은 사람들이 놀랍습니다. 지적이고 관찰적인 사람들은 그런 종류의 일을 제대로 할 수 없습니다). 또한 내 메일 서버가 만료 된 하위 도메인에서 "랜덤"주소 (aaron @, adam @, amy01 @, ...)로 전송 된 메시지를 수신하지 못하는 데 일이 소요됨을 의미합니다. 또한 시각 장애인이 사용하거나 화면이 좋지 않은 화면 판독기를 혼동하지 않습니다.

아직 시도하지 않은 또 다른 옵션은 AJAX 요청을 사용하여 전자 메일 주소와 기타 세부 정보를 읽는 것입니다. document.write 기반 난독 처리보다 약간 더 효과적 일 수 있지만 웹 서버에 약간의 추가로드가 추가됩니다.

예를 들어 "문의/문의"양식을 사용했지만 때로는 일반 텍스트 전자 메일 주소 이상으로 스팸을받는 경우가있었습니다. 때로는 양식을 사용하여 계정을 생성하는 대신 스크립트를 사용하는 경우가 있습니다. 연락 양식으로 사용하십시오.

2
David Spillett

안돼요, 호세! -예, 호세!

a href="mailto:" 이메일 주소 수집을 '중지'할 방법이 없습니다. JavaScript를 사용하는 것이 대부분의 수확 봇을 막는 좋은 방법이라고 오랫동안 믿어지고 있지만 요즘 봇은이 방법을 무찌르는 데 능숙합니다. 또한 decaptcha 소프트웨어를 사용하여 보안 문자를 무찌를 수있는 것과 같은 방식으로 전자 메일 주소가 포함 된 이미지를 무찌를 수 있습니다.

더 나은 방법!

더 나은 접근 방법은 좋은 스팸 차단 기능을 제공하는 평판 좋은 메일 서비스를 사용하는 것입니다. Google G SuiteMicrosoft Office 365 시장에 나와있는 소프트웨어와 비교할 수없는 알고리즘을 사용합니다. 대부분 하루에 수백만 건의 이메일을 받고 '학습'할 수 있기 때문입니다 스패머가 이메일을 보내려고 시도하기 훨씬 전에 차단합니다.

실제로 1 년 전 Google은 머신 러닝 기술이 99.9 %의 Gmail 스팸 및 피싱 메시지를 차단 함 , plesk/cpanel 뒤에서 실행되는 로컬 Microsoft Exchange 및 메일 서버는이 보호 기능과 경쟁 할 수 없습니다.

요약

AI 머신 러닝이 가능한 평판 좋은 메일 서비스를 사용하여 스팸을 차단하십시오. 스패머가 Cloudflare를 사용하여 사이트를 방문하는 것을 방지하여 한 단계 더 나아가서 공격적인 봇이 사이트에 도달하기 전에 대부분의 공격적인 봇을 감지 할 수 있습니다.

1
Simon Hayter

봇 필터가있는 경우 (1x1px, 서브넷, 알려진 봇, jscript 감지, http 리퍼러 및 브라우저 에이전트 사용) 봇인 경우 정보를 표시 할 수 없습니다.

PHP 솔루션 :

<?
if (!isbot()) {
  echo 'mailto:'.$email_address_for_real_people;
  }
  else {
  echo 'mailto:[email protected]'.$bots_domain_address;
  }
?>
1
Talvi Watia

내가 찾은 가장 쉬운 방법은 기본 주소가있는 연락처 양식을 사용하는 것뿐만 아니라 사용자가 커뮤니케이션 대상을 선택할 수있는 기능 (마케팅, 판매, 기술 지원 등)을 사용하는 것입니다. 그런 다음 드롭 다운 값에 따라 게시 된 양식 데이터가 서버에서 적절한 전자 메일 주소로 전송됩니다.

데이터베이스 테이블에서이 대화 상대 목록을 실행하여 드롭 다운에 항목을 쉽게 업데이트/추가 할 수 있습니다. 이렇게하면 광범위한 종류의 스팸 봇에 어떤 종류의 주소도 노출시키지 않아도 사용자에게 피드백을 보낼 수있는 좋은 방법을 제공 할 수 있습니다.

1
Milner

연락처 양식을 설정하려면 Zoho Creator 를 사용하십시오. 수신 한 피드백은 온라인으로 액세스 할 수있는 데이터베이스에 저장되며 이메일로도 전송됩니다.

0
mvark

PHP function 을 사용하여 런타임에 스크립트를 출력하는 일부 자바 스크립트를 생성합니다. 런타임에 JS를 생성하기 위해 need PHP를 사용하지 않으면 JS를 로컬로 한 번 생성 한 다음 포함시킬 수 있습니다. 귀하의 페이지에서 정적 JS.

주어진 스 니펫 ($ processedContent가 HTML 임)에서 이메일 주소를 난독 화하기 위해 아래의 스 니펫과 링크 된 기능을 사용할 수도 있습니다.

 $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);
 }
}
0
iloveitaly

내가 한 가지 http://www.stopforumspam.com 의 API를 사용하여 스패머를 확인하는 것입니다. 자세한 내용은 저에게 연락 주시면 기꺼이 도와 드리겠습니다!

버드 만즈

Manz Web Designs, LLC

0
Bud

나는 수년간 [email protected]을 사용해 왔습니다. 사용자는 일반적으로 '스팸 없음'을 삭제하기에 충분합니다.

그렇지 않으면, 나는 단지 '보안 문자'와 함께 연락 양식을 사용하고 웹 사이트에서 직접 메일을 보냅니다.

0
Gary.Ray

Dan Benjamin의 또 다른 이메일 난 독자입니다. Enkoder . 온라인 앱과 Mac 용 독립형 앱으로 제공됩니다.

0
Alex

Javascript를 사용하는 것이 마음에 들지 않으면 이메일 주소를 난독 처리하기 위해 ROT13과 같은 것을 사용할 수 있습니다. 예를 들어 이것을보십시오 :
http://scott.yang.id.au/2003/06/obfuscate-email-address-with-javascript-rot13/

개인적으로 연락 양식을 사용하는 것이 좋으며 스팸봇에 대해 걱정하지 않아도되지만 당연히 요구 사항에 따라 다릅니다.

0
Mee

문의 양식을 사용하는 경우 입력에 임의의 이름을 사용하는 재미있는 기술을 사용할 수 있습니다.

예를 들어, 이메일을 입력으로 사용하는 대신 연락처 양식을 작성하고 이름 (eman) 및 설명 (tnemmoc)과 동일한 liame을 사용합니다. 봇은 실제로 해당 입력이 무엇을하는지 알지 못하므로 무시합니다.

0
dkuntz2

Google 문서 양식/스프레드 시트를 설정했습니다. 하루에 한 번 양식 항목을 확인할 수 있으며받은 편지함이 넘치지 않습니다.

0
Sri