2012-12-16 2 views
-1

한 번에 여러 개의 주소로 이미지를 보내도록 간단한 PHP 메일 보낸 사람을 만들고 있습니다. 이유를 알고 있지만, 이메일PHP 메일 : 스팸 폴더에 모든 전자 메일이 수신됩니다.

여기

내가 PHP 메일 보낸 파일을 호출하는 방법은 ... 아무리 내가 그들을 보내 어떤 이메일 관리, 스팸 폴더에 도착 계속하지 마십시오 :

$.ajax({ url: 'mail_sender.php?receiver=' + receiver + '&=lang' + lang, 

    success: function (response) 
    { 
     console.log('Mails ' + response); 
    } 
}); 

그리고 이것은 내 PHP 파일 구조입니다 :

<?php 

// Reciever 
$_to   = $_GET["receiver"]; 
$_lang  = $_GET["lang"]; 

// subject 
$subject  = 'My Subject'; 

// sender 
$sender   = "[email protected]"; 

// message 
$message  = ' 
       <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
       <head> 
       <META name="generator" content="HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org"> 
       <TITLE></TITLE> 
       <META http-equiv="Content-Type" content="text/html; charset=us-ascii"> 
       </head> 
       <body> 
        <img src='."https://www.mysite.es/demo/img/emails/imagen_".$_lang.".jpg".' /> 
       </body> 
       </html> 
'; 

// To send HTML mail, the Content-type header must be set 
$headers = "Reply-To: <[email protected]> \r\n"; 
$headers .= "Return-Path: <[email protected]>" . "\r\n"; 
$headers .= "From: <[email protected]>" . "\r\n"; 
$headers .= "Organization: My organization" . "\r\n"; 
$headers .= "MIME-Version: 1.0" . "\r\n"; 
$headers .= "Content-type: text/html; charset=utf-8" . "\r\n"; 
$headers .= "X-Priority: 3" . "\r\n"; 
$headers .= "X-Mailer: PHP/". phpversion(); 

// Mail it 
$ret = mail($_to, $subject, $message, $headers); 

if ($ret == '' || $ret) 
{ 
    echo $ret; 
}else{ 
    echo $ret; 
} 

?> 

아무도 실마리를 줄 수 있습니까?

대단히 감사합니다!

+1

귀하의 호스팅 IP를 변경하십시오. 이것은 스팸 메일 폴더에 있더라도 전자 메일 계정에 전자 메일이 도착하는 동안 스크립트 문제는 아닙니다. PHP 메일러 https://code.google.com/a/apache-extras.org/p/phpmailer/를 사용하면 코드가 올바르다 고 확신 할 수 있습니다. –

+0

많은 수의 가능성이 여기에 여러 번 대답했습니다 –

+1

강력하게 인증을 사용하도록 권장합니다. 이 프레임 워크 (http://swiftmailer.org/)는 절대적으로 놀랍고 사용하기 쉽습니다. 99 % 문제를 해결합니다. – kpotehin

답변

0

문제는 서버의 IP 여야합니다. 공급자가 동일한 IP로부터 많은 메일을받는다면 무엇이 오더라도 스팸으로 간주됩니다.

+0

그래서 수백만 개의 이메일을 보내는 gmail ip는 항상 스팸으로 간주됩니까? –

+0

나는 그가 구글 서버의 친구라고 생각하지 않는다. – Theolodis

+0

그가 결코 말하지 않았다. –

0

spamassassin을 통해 이메일을 테스트하면 주어진 규칙에 따라 이메일에 스팸 점수가 부여됩니다.

많은 이메일 제공 업체가 이러한 종류의 도구를 사용합니다.

편집 : http://wiki.apache.org/spamassassin/StartUsing 시작하는 것이 좋습니다.

1

기술적으로 코드에 문제가있는 것 같지 않으며 이메일이 스팸 필터에 의해 거부되는 데에는 여러 가지 이유가있을 수 있지만 내 이메일 내용은 이미지 일뿐입니다. 이것은 스팸 필터에 대한 강력한 지표입니다. 텍스트를 사용하여 이메일을 디자인하고 이미지를 사용하여 정보를 지원하십시오.

2

HTML 대신 일반 텍스트 이메일을 보내보십시오 (필요한 경우). 내 경험에 비추어 볼 때 HTML은 스팸 필터를 유발하지만 실제로는 HTML을 사용하여 mailchimp가 사용하는 일부 이메일 템플릿을 살펴볼 필요가 있습니다.

https://github.com/mailchimp/Email-Blueprints

관련 문제