Электронная почта пересылается в Спаме - PullRequest
0 голосов
/ 15 декабря 2018

У меня есть проект в CakePHP, в котором я разрабатываю API и в рамках этого API.Я использую функцию электронной почты, но всякий раз, когда я запускаю эту функцию, она отправляет почту в папку со спамом.Я пытался использовать другого поставщика услуг электронной почты, такого как AWS, sendgrid, Gmail, но каждый раз, когда моя почта пересылается в папку со спамом.Вот фрагмент кода моего контроллера, описывающий функцию электронной почты

$password= $this->randomPassword();                          
$message = 'this is a test mail from gmail.';
$email    = new Email('default'); 
$email->transport('gmail');
$to       = $user_info['email'];
$subject  = 'Forgot Password';
$headers  = 'From: sender_address' . "\r\n" . 
            'MIME-Version: 1.0\r\n' .
            'Content-type: text/html; charset=utf-8'.
            'X-Priority: 3'.
            'X-Mailer: PHP/' . phpversion(); 
mail($to, $subject, $message, $headers);

, и это мой транспортер электронной почты в файле конфигурации приложения:

'EmailTransport' => [
    'default' => [
        'className' => 'Mail',
        // The following keys are used in SMTP transports
        'host' => 'my-webmail_ip',
        'port' => 465,
        'timeout' => 30,
        'username' => 'username',
        'password' => 'password',
        'client' => null,
        'tls' => null,
        'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null),
    ],

     'sendgrid' => [
        'className' => 'Mail',
        // The following keys are used in SMTP transports
        'host' => 'smtp.sendgrid.net',
        'port' => 587,
        'timeout' => 30,
        'username' => 'apikey',
        'password' => 'api_key_of_sendgrid',
        'client' => null,
        'tls' => null,
    ] 
    'ses' => [
        'className' => 'Smtp',
        'host' => 'email-smtp.us-east-1.amazonaws.com',
        'port' => 587,
        'username' => 'username',
        'password' => 'password',
        'tls' => true
    ],
    'gmail' => [
        'className' => 'Smtp',
        'host' => 'ssl://smtp.gmail.com',
        'port' => 587,
        'username' => 'username',
        'password' => 'password',
        'tls' => true
    ],
],

'Email' => [
     'default' => [
        'transport' => 'default',
        'from' => 'you@localhost',
        'charset' => 'utf-8',
        'headerCharset' => 'utf-8',
    ], 
    'default' => [
        'transport' => 'ses',
        'from' => 'you@localhost',    
    ],
    'default' => [
        'transport' => 'gmail',
        'from' => 'you@localhost',    
    ],
],

Я перепробовал всех этих поставщиков электронной почты, нони один из них не отправляется в почтовый ящик.хотя электронные письма работают с каждым из них.Если кто-то когда-либо имел такой опыт, пожалуйста, дайте мне знать решение или метод для устранения этой проблемы.Буду очень признателен.

...