2010-03-25 1 views
3

내 웹 사이트는 php mail() 함수를 사용하여 활성화 메일을 새 회원에게 보냅니다. Google 메일 서비스 (aspmx.googlemail.com)를 사용하여 이메일 계정을 관리합니다. 그러나 불행히도 Hotmail 사용자는 원하지 않는 폴더에서 정품 인증 전자 메일을받습니다.Hotmail이 php의 이메일을 거부합니다.

나는 약간의 조사를했고 SPF 레코드에 대해 알아 냈습니다. (웹 서버에 대한 통제가 제한되어 있기 때문에 키를 사용할 수 없습니다). 그렇다면 SPF 레코드를 어떻게 구성합니까?

지금이 :

v=spf1 a mx a:mywebsite.net include:aspmx.googlemail.com ~all 

이 내가 필요한 것입니까?

편집 : 이제 PHPMailer를 사용하여 Google SMTP 서버에 연결했습니다. Hotmail은 더 이상 이러한 방식으로 원하지 않는 것으로 표시하지 않습니다. (http://sourceforge.net/projects/phpmailer/)

+2

역사적으로 Hotmail은 무엇이나 모든 것을 스팸 메일로 보내는 것으로 유명합니다. 이 문제를 해결할 수 있다면 스팸 방지를 위해 고객을 서둘러 길 수도 있습니다. – glasnt

+0

나는이 상황에서도 작동하는 Pear Mail을 사용합니다. –

답변

3

PHP의 mail()은 (는) 아마도 smtp를 사용하여 이메일을 보내지 않습니다. 적절한 헤더를 추가하고 스팸 득점자를 사용하여 귀하의 기회를 도우 려하거나, Google의 메일 서버를 통해 smtp를 사용할 수 있습니다 (비록 그렇게할만한 것은 아니지만). 여기

이 스팸 득점자 :

여기 http://www.contactology.com/check_mqs.php

일부 이메일 헤더의 예입니다, 설정해야합니다 귀하의 기본은 아마도 스팸 필터에 좋은 아니므로 헤더에서 :

$headers = "From: My site<[email protected]_site.com>\r\n"; 
$headers .= "Reply-To: [email protected]_site.com\r\n"; 
$headers .= "Return-Path: [email protected]_site.com\r\n"; 
$headers .= "X-Mailer: Drupal\n"; 
$headers .= 'MIME-Version: 1.0' . "\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 

mail($recipient, $subject, $message, $headers); 
+0

From 헤더를 넣으면 두 번 전달됩니다. – Jens

+0

스팸 기록자가 내게 0.3을주었습니다. 네가 보낸 편지 하나는 효과가 없었어. – Jens

3

해당 SPF 레코드를 사용하려면 DNS 영역 파일에 추가해야합니다.

DNS가 등록되어있는 곳으로 이동하여 몇 개의 TXT 레코드를 추가하십시오.

다음과 같이 표시되어야합니다.

mywebsite.net. IN TXT "v = spf1 a mx a : mywebsite.net 포함 : aspmx.googlemail.com ~ 모두 " mailserver.mywebsite.net. TXT IN "V = spf1 MX A : mywebsite.net은 다음과 같습니다 aspmx.googlemail.com는 ~ 모든 "훌륭한 정보 이상의 톤이 http://www.openspf.org/

에 있습니다

이 보장되지 않습니다 귀하의 메시지 것이다 스팸 필터를 통과하지만 도움이 될 것입니다.

다른 할 일은 Hotmail 팀에서 "허용 된"입니다. 시간이 지났지 만 본질적으로 컴퓨터에 연락처를 등록합니다. 이렇게하면 의심스러운 자료가 사이트에서 왔을 때 직접 불평 할 수 있습니다. 자신을 "허용 목록에 추가"한 후에는 더 많은 메일을 전달하는 경향이 있습니다.

+0

SPF TXT 레코드를 추가 할 위치를 알고 있습니다. 나는 단지 내가 상황에 맞는 구문을 사용하고 있는지 알고 싶었다. – Jens