Как настроить отправку писем от локально установленного магазина на Bitrix

Набор действий необходимых для отправки email от имени локально установленного интернет магазина

Зачастую, разработчик Битрикс оказывается в ситуации, когда нужно настроить рассылку писем клиентам интернет магазина. В этой статье описан алгоритм действий, позволяющий произвести настройку и тестирование отправки писем от имени тестового окружения. Речь идёт о приложении SSMTP. Приложение является очень простым в настройке, и практически сразу работает. А собственно что оно делает ? Каждый раз, когда в PHP вызывается функция отправки писем mail, оно будет пытаться отправить письмо адресату. Для простототы, можно использовать почтовые сервера яндекс, google или иной smtp по вашему выбору, далее речь пойдёт о smtp яндекс.

Предположим,операционная система на которой происходит настройка - это Ubuntu. Неожиданно, не правда ли ? Версия системы 14.04.

Установка

sudo apt-get install ssmtp

Конфигурация ssmtp [ sudo nano /etc/ssmtp/ssmtp.conf ]

root=[имя пользователя в операционной системе]
mailhub=smtp.yandex.ru:465
rewriteDomain=[домен учетной записи yandex почты]
hostname=nginx01
UseTLS=Yes
AuthMethod=LOGIN
AuthUser=[ имя учетной записи yandex почты ]
AuthPass=[ пароль учетный записи yandex почты ]
FromLineOverride=NO

Настройка алиасов [ sudo nano /etc/ssmtp/revaliases ]

www-data:noreply@gwgr.ru:smtp.yandex.ru:465
[имя пользователя в операционной системе]:noreply@gwgr.ru:smtp.yandex.ru:465

Редактирование настроек php [ sudo nano /etc/php/7.0/apache2/php.ini ]

sendmail_path = /usr/sbin/ssmtp -t

PHP скрипт отправки письма

ini_set( ' display_errors' , 1 );
error_reporting( E_ALL );
$from="info@gwgr.ru";
$to="info@gwgr.ru";
$subject="PHP Mail Test script";
$message="This is a test to check the PHP Mail functionality";
$headers='From: Support Team <' .$from.'>' . "\r\n" .
'Reply-To: '. $from . "\r\n" .
'MIME-Version: 1.0' . "\r\n" .
'Content-Type: text/html; charset=utf-8' . "\r\n" .
'Content-Transfer-Encoding: quoted-printable';
mail($to,$subject,$message, $headers);
echo "Test email sent";
?>
+1
Share
Pin
Like
Send
Share
Send

Прочитайте другие наши записи в блоге