Amazon web services 如何从php应用程序发送AWS SES电子邮件通知

Amazon web services 如何从php应用程序发送AWS SES电子邮件通知,amazon-web-services,Amazon Web Services,我们在ec2上部署了一个php应用程序。我们还配置了ses设置。现在,任何人都可以与我分享应用程序中用于发送批量邮件的设置。我经历了不同的设置,但完全混淆了,有些人推荐phpmailer,有些人推荐awsdkforphp。 请帮帮我。写现在我们正在使用gmail帐户发送电子邮件,并使用以下设置 $config = array(); $config['protocol'] = 'smtp'; //$config['smtp_crypto'] = 'ssl'; $confi

我们在ec2上部署了一个php应用程序。我们还配置了ses设置。现在,任何人都可以与我分享应用程序中用于发送批量邮件的设置。我经历了不同的设置,但完全混淆了,有些人推荐phpmailer,有些人推荐awsdkforphp。 请帮帮我。写现在我们正在使用gmail帐户发送电子邮件,并使用以下设置

 $config = array();
    $config['protocol'] = 'smtp';
    //$config['smtp_crypto'] = 'ssl';
    $config['smtp_host'] = 'host';
    $config['smtp_user'] = 'test@gmail.om';
    $config['smtp_pass'] = '....';
    $config['smtp_port'] = 587;
    $config['charset'] = 'iso-8859-1';
    $config['wordwrap'] = 'TRUE';
    $config['newline'] = "\r\n";
    $this->email->initialize($config);

我可以简单地用aws ses设置替换这些设置。

如果您只想使用ses作为SMTP邮件发送程序,那么它实际上只是普通SMTP服务器(在您的gmail中)的替代品

 $config = array();
    $config['protocol'] = 'smtp';
    //$config['smtp_crypto'] = 'ssl';
    $config['smtp_host'] = 'host';
    $config['smtp_user'] = 'test@gmail.om';
    $config['smtp_pass'] = '....';
    $config['smtp_port'] = 587;
    $config['charset'] = 'iso-8859-1';
    $config['wordwrap'] = 'TRUE';
    $config['newline'] = "\r\n";
    $this->email->initialize($config);
使用AWS SDK也是一种选择,并打开了一些更特定于SES的功能,但在许多项目上使用SES多年后,我从未感觉到需要,也从未感觉到需要增加这种复杂性


有一件事您可能会感到困惑,那就是您没有为此使用常规AWS凭据,您需要从AWS控制台的SES部分专门生成SMTP凭据,然后将它们用于SMTP_用户和SMTP_pass-它们看起来与常规AWS凭据相同,因此可能会产生混淆。

如果您只想使用SES作为SMTP邮件发送程序,那么它实际上只是普通SMTP服务器(在您的gmail中)的替代品

使用AWS SDK也是一种选择,并打开了一些更特定于SES的功能,但在许多项目上使用SES多年后,我从未感觉到需要,也从未感觉到需要增加这种复杂性


有一件事您可能会感到困惑,那就是您没有为此使用常规AWS凭据,您需要从AWS控制台的SES部分专门生成SMTP凭据,然后将它们用于SMTP_用户和SMTP_pass-它们看起来与常规AWS凭据相同,因此可能会产生混淆。

感谢您的澄清,我已经生成了aws smtp凭据,我将用于用户和paaword。亲爱的,我正在使用下面提到的设置,但无法接收电子邮件$config=array()$配置['protocol']='smtp'$配置['smtp_crypto']='tls'$config['smtp_host']='email smtp.eu-west-1.amazonaws.com'$配置['smtp_用户']='..'$配置['smtp_pass']=''$config['smtp_port']=587//$配置['charset']=“iso-8859-1”$配置['wordwrap']='TRUE'$配置['newline']=“\r\n”$此->电子邮件->初始化($config)$此->电子邮件->发件人noreply@test“,'Noreply');}感谢澄清,我已经生成了aws smtp凭据,我将用于用户和paaword。亲爱的,我正在使用下面提到的设置,但无法接收电子邮件$config=array()$配置['protocol']='smtp'$配置['smtp_crypto']='tls'$config['smtp_host']='email smtp.eu-west-1.amazonaws.com'$配置['smtp_用户']='..'$配置['smtp_pass']=''$config['smtp_port']=587//$配置['charset']=“iso-8859-1”$配置['wordwrap']='TRUE'$配置['newline']=“\r\n”$此->电子邮件->初始化($config)$此->电子邮件->发件人noreply@test“,'Noreply');}