FAQ   •  Поиск
Вход  •  Регистрация
 
Настройка SPF и DKIM для отправки почты со своего сервера че

 
Начать новую тему   Ответить на тему    Список форумов newssoft.ru -> Серверные команды
Предыдущая тема :: Следующая тема  
Автор Сообщение
admin
Site Admin


Зарегистрирован: 11.09.2008
Сообщения: 390

СообщениеДобавлено: Сб Фев 28, 2015 1:46 pm    Заголовок сообщения: Настройка SPF и DKIM для отправки почты со своего сервера че Ответить с цитатой

http://scriptidy.com/nastrojka-spf-i-dkim-dlya-otpravki-pochty-so-svoego-servera-cherez-yandex.html
Настроить отправку почты через сервера Яндекса достаточно легко, а вот сделать так, чтобы письма как можно реже попадали в спам – не так просто, как показалось на первый взгляд. Вот список действий, которые помогли мне:

1) Для начала делегируем свой домен на Яндекс. Можно и просто почтой для домена воспользоваться.

2) Получаем токен для активации API Яндекс.Почты для доменов.

3) Далее получаем приватный ключ для DKIM через API следующим образом: https://pddimp.yandex.ru/dkim/status.xml?domain=ДОМЕН&token=ТОКЕН&secretkey=yes

Сам ключ находится в секции secretkey. Мне пришлось копировать его с исходного кода HTML-страницы, потому что в браузере он выводился в неправильном формате – в одну строку.

4) Если домен на Яндекс не делегирован, то нужно настроить TXT-запись для подомена mail._domainkey.domain.com. именно на том сервере, с которого производится отправка писем. Если домен делегирован на Яндекс, то все должно быть прописано автоматом.

5) Настраиваем TXT запись:

Если письма от имени вашего домена будут отправлять не только серверы Яндекса, а например, серверы, на которых размещён ваш сайт (какие-нибудь уведомления о регистрации или о заказах), эти серверы тоже нужно перечислить в SPF-записи. Вместо “v=spf1 redirect=_spf.yandex.ru” необходимо указать следующее значение: “v=spf1 ip4:IP-1 ip4:IP-2 ip4:IP-3 include:_spf.yandex.ru ~all”, где IP-1, IP-2, IP-3 — адреса тех серверов, с которых дополнительно отправляются письма.

6) Теперь почту с сервера легко можно отправлять через PHPMailer. В проекте на Yii я делаю это с помощью расширения
Код:
YiiMailer:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21   $mail = new YiiMailer('registration', [
    'activationUrl' => $activationUrl,
    'sourcePassword' => $sourcePassword,
]);
 
$mail->setFrom(Yii::app()->params['noreplyEmail'], Yii::app()->params['siteName'] . ' Support');
$mail->setSubject('Welcome to ' . Yii::app()->params['siteName'] . '.com!');
$mail->setTo($model->email);
$mail->isSMTP();
$mail->Host = Yii::app()->params['noReplaySmtpHost']; // smtp.yandex.ru
$mail->Port = Yii::app()->params['noReplaySmtpPort']; // 465
$mail->SMTPAuth = true;
$mail->SMTPSecure = Yii::app()->params['noReplaySmtpSecure']; // ssl
$mail->Username = Yii::app()->params['noreplyEmail']; // noreplay@domain.com
$mail->Password = Yii::app()->params['noReplaySmtpPassword']; // noreplay@domain.com password
 
$environments = require(Yii::getPathOfAlias('application') . '/config/environments.php');
$mail->DKIM_private = dirname($environments[ENVIRONMENT]['config_main']) . '/DKIM_private_key.txt';
$mail->DKIM_domain = Yii::app()->params['DKIM_domain'];
$mail->DKIM_selector = Yii::app()->params['DKIM_selector'];
$mail->send();



Все действия с DKIM (вторая часть п.1 и остальные пункты) нужны только тогда, когда используется почта для домена. Если вы проделегировали домен, то цифровая подпись ставится автоматически – о чем и написано в мануале Яндекса.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов newssoft.ru -> Серверные команды Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
AllSat 22  - photographe de mariage - 2006