Настройка почты

При каждом важном событии происходящем на торговой площадке (например покупка товара или отзыв) формируется почтовое уведомление, которое должно быть доставлено конечному пользователю. Уведомление сохраняется в таблице `message_queue` представляющей собой очередь из email сообщений, которые обрабатываются при помощи планировщика задач (cron).

Настройка внешнего SMTP сервера

Для отправки писем мы рекомендуем использовать внешний SMTP сервер. Внешний SMTP сервер может быть представлен вашим интернет-провайдером, хостинг-провайдером, различными почтовыми сервисами и т.п.

На сегодняшний день наиболее популярные почтовые сервисы, такие как Gmail, Yandex.mail и Mail предоставляют возможность отправки почтовых писем через свои службы. Ниже приведены примерные настройки этих сервисов.

Настройки производятся в конфигурационном файле /common/config/env.php

Пример настройки SMTP mail.ru

'mail' => [
            'class' => 'common.extensions.mail.YiiMail',
            'viewPath' => 'frontend.views.mail',
            'logging' => true,
            'transportType' => 'smtp',
            'transportOptions' => [
                'host' => 'ssl://smtp.mail.ru',
                'username' => 'demo@molotoksoftware.com',
                'password' => 'password',
                'port' => '465',
            ],
        ],

Пример настройки SMTP gmail.com

При использовании сервисов от gmail.com, потребуется дополнительно разрешить отправку писем с неподтвержденных устройств (в настройках gmail).

'mail' => [
            'class' => 'common.extensions.mail.YiiMail',
            'viewPath' => 'frontend.views.mail',
            'logging' => true,
            'transportType' => 'smtp',
            'transportOptions' => [
                'host' => 'ssl://smtp.gmail.com',
                'username' => 'user@gmail.com',
                'password' => 'password',
                'port' => '465',
            ],
        ],

Пример настройки SMTP yandex.ru

'mail' => [
            'class' => 'common.extensions.mail.YiiMail',
            'viewPath' => 'frontend.views.mail',
            'logging' => true,
            'transportType' => 'smtp',
            'transportOptions' => [
                'host' => 'ssl://smtp.yandex.ru',
                'username' => 'user@yandex.ru',
                'password' => 'password',
                'port' => '465',
            ],
        ],

Настройки отправки почты с сервера

В случае крайней необходимости можно прибегнуть к отправке почты через SMTP собственного сервера либо функции php mail(). Необходимые параметры можно уточнить у хостера.

Примерные настройки через SMTP сервера

'mail' => [
            'class' => 'common.extensions.mail.YiiMail',
            'viewPath' => 'frontend.views.mail',
            'logging' => true,
            'transportType' => 'smtp',
            'transportOptions' => [
                'host' => 'localhost',
                'username' => 'postmaster@domain.com',
                'password' => 'password',
                'port' => '25',
            ],
        ],

Примерные настройки через php mail()

'mail' => [
            'class' => 'common.extensions.mail.YiiMail',
            'viewPath' => 'frontend.views.mail',
            'logging' => true,
            'transportType' => 'mail',
        ],