2015-05-27 3 views
0

Я использую ниже код для отправки электронной почты в yii2:почта не работает в yii2

В конфигурации/main.php

return [ 
    'components' => [ 
    'mailer' => [ 
      'class' => 'yii\swiftmailer\Mailer', 
      'viewPath' => '@common/mail' 
     ], 
    ], 
]; 

В мой контроллер:

Yii::$app->mailer->compose('contact', [ 
         'name' => 'Dan Drown', 
         'address' => '111 Highway 50, CA']) 
       ->setFrom('[email protected]') 
       ->setTo('[email protected]') 
       ->setSubject('Re: Hello word') 
       ->send(); 

Но я не получил никакой почты по почте [email protected] И я не знаю почему? В чем проблема?

+1

ли ваша рассылка поддержка сервера? Можете ли вы создать новый файл php для проверки функции mail()? Некоторые хосты не разрешают рассылки, особенно облачные хосты, такие как Heroku, по крайней мере, не без дополнительных шагов. Если это традиционный сервер, он должен иметь возможность отправлять почту. –

+0

Вы проверили список спама? – iamawebgeek

+0

Да, я проверил, но это была не всякая почта. –

ответ

0

Вот пример правильной настройки почтовой программы:

'mailer' => [ 
    'class' => 'yii\swiftmailer\Mailer', 
    'useFileTransport' => false, 
    'transport' => [ 
     'class' => 'Swift_SmtpTransport', 
     'host' => 'localhost', 
     'username' => 'username', 
     'password' => 'password', 
     'port' => '587', 
     'encryption' => 'tls', 
    ], 
], 

Вы можете прочитать здесь: http://www.yiiframework.com/doc-2.0/yii-swiftmailer-mailer.html

+0

Спасибо! Но когда я использую gmail, он ограничен, если вы отправляете более 20 писем. Я хочу использовать почту почтового сервера по умолчанию. Можете ли вы дать мне другую идею, не так ли? –