如何使用AWS SDK for PHP通过专用IP的SES发送电子邮件?

时间:2018-05-15 08:32:09

标签: php amazon-web-services email amazon-ses aws-php-sdk

我的aws / aws-sdk-php版本是2.7.27。我们发送的电子邮件被标记为垃圾邮件。我发现我的AWS账户在专用IP页面中有8个专用IP。但我的电子邮件的发件人IP不是任何专用IP,它是亚马逊SES的共享IP。在SES的开发者文档中,我发现他们说我可以创建一个配置集来指定用于发送的whick 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 :(得分:0)

我发现了问题。我的专用IP正在升温,在完全预热之前我无法使用它们。