Ошибка отправки писем с помощью SendMailSmtpClass и SMTP Yandex

Настройка Яндекс почты для отправки писем через smtp

Последний год в комментариях к статье про класс SendMailSmtpClass, который работает с SMTP серверами, стали писать о проблемах отправки через Яндекс. Я пару раз проверил код и его работу, проблем не нашел. Но вопросы так и приходят. Кроме комментариев, люди пишут в ВК и на почту с подобными вопросами. Никак не получалось понять, в чем дело. Но недавно удалось отловить ошибку. Как ее исправить и дальше пользоваться классом, расскажу в этой коротенькой статье.

Кто виноват и что делать? Никто не виноват. И Яндекс.Почта корректно работает. И скрипт класса SendMailSmtpClass не ломался, ошибок в работе с SMTP Яндекса в нем нет. Проблема в настройках безопасности Яндекс. Я всегда проверял отправку со своего старого аккаунта, который был создан еще до внесения изменения в настройки безопасности. Поэтому отловить баг не получалось. В старых аккаунтах Яндекс нужная настройка включена по умолчанию, а в новых отключена. Поэтому если вы зарегистрировали новую почту на Яндекс и решили использовать аккаунт для отправки писем с сайта, то предварительно нужно внести изменения в настройки почты. Все дело в том, что Яндекс перестал предоставлять сторонним программам и сервисам доступ к своим серверам через обычный пароль пользователя. У Яндекса это называется «Портальный пароль».

Настройка Яндекс.Почты для отправки писем через SMTP с помощью SendMailSmtpClass

Чтобы можно было подключиться к SMTP серверу Яндекса через ваш аккаунт, нужно в настройках поставить галочку «Способ авторизации: Портальный пароль». Яндекс выводит уведомление, что это небезопасно. Думаю, что со временем этот способ авторизации совсем отключат, но это будет не скоро. Тогда придется переписывать класс для работы с smtp.
Для включения нужной настройки, нужно перейти в следующие разделы: Почта → Все настройки → Почтовые программы. И поставить галочку «Портальный пароль». Чтобы было понятней куда идти и на что кликать, ниже прикрепил скрины.

Настройка Яндекс почты для отправки писем через smtp с помощью SendMailSmtpClass

Заключение

Помимо настроек почтового ящика у новых аккаунтов Яндекс есть и другие ограничения. Пока рейтинг доверия нового e-mail не велик, рассылка пачек писем будет заблокирована. Пока ящик молодой и не имеет истории отправок и получения писем, к нему меньше доверия, чем к старому e-mail. Конкретной информации по этому поводу нет, но зависимость от возраста ящика точно есть. Со своего старого аккаунта, которым я пользуюсь почти 15 лет, без проблем можно выполнять рассылки и по 50-100 писем за одно выполнение скрипта. А совсем новый аккаунт блокируется при попытке одновременно отправить 5-7 писем.

Рассказать друзьям:


Оценить:
(6 оценок, среднее: 4,17 из 5)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

code