Как использовать AWS SDK для PHP для отправки электронной почты по SES с выделенным IP? - PullRequest
0 голосов
/ 15 мая 2018

Моя версия aws / aws-sdk-php - 2.7.27.Письма, которые мы отправили, помечены как спам.Я обнаружил, что в моей учетной записи AWS есть 8 выделенных IP-адресов на странице выделенных IP-адресов.Но IP-адрес отправителя моей электронной почты - это не выделенный IP-адрес, а общий IP-адрес amazon SES.В документе для разработчиков SES я обнаружил, что они могут создать набор конфигурации, чтобы указать, какой пул IP-адресов используется для отправки.Я добавил параметр под названием «ConfigurationSetName», как сказал документ, но он не работает, мои электронные письма все еще отправляются через общие IP-адреса.Мой код выглядит так:

        $sendingParams = array(
            'Source'               => $fromEmail,
            'Destination'          => array(
                'ToAddresses' => is_array($email) ? $email : array($email),
                //'CcAddresses'  => is_array($ccEmail) ? $ccEmail : array($ccEmail),
                //'BccAddresses' => is_array($bccEmail) ? $bccEmail : array($bccEmail),
            ),
            'Message'              => array(
                // Subject is required
                'Subject' => array(
                    // Data is required
                    'Data'    => $subject,
                    'Charset' => 'utf-8',
                ),
                // Body is required
                'Body'    => array(
                    'Html' => array(
                        // Data is required
                        'Data'    => $content,
                        'Charset' => 'utf-8',
                    ),
                ),
            ),
            'ReplyToAddresses'     => array($fromEmail),
            'ReturnPath'           => $returnPath,
            'ConfigurationSetName' => 'system',
        );
        if (!empty($ccEmail)) {
            $sendingParams['Destination']['CcAddresses'] = is_array($ccEmail) ? $ccEmail : array($ccEmail);
        }
        if (!empty($bccEmail)) {
            $sendingParams['Destination']['BccAddresses'] = is_array($bccEmail) ? $bccEmail : array($bccEmail);
        }
        $result = $this->sdkClient->sendEmail($sendingParams);

В чем проблема с моим кодом?Стоит ли менять версию SDK?

1 Ответ

0 голосов
/ 18 мая 2018

Я нахожу проблему.Мои выделенные IP-адреса прогреваются, и я не могу использовать их до того, как они полностью прогреются.

...