亚马逊aws如何升级php,初哥请教php环境下如何使用amazon SES

本文详细介绍了如何使用Amazon Simple Email Service (SES)发送邮件,包括开通服务、验证发件邮箱、设置编码以及申请生产环境权限的过程。通过示例代码展示了PHP如何与SES接口交互,以及如何处理中文内容的发送。请注意,发送限额会逐步提升以防止滥用服务,且需通过亚马逊的人工审核才能向第三方发送邮件。
摘要由CSDN通过智能技术生成

要使用ses服务首先你得确保开通了此服务,假设你已经申请开通了ses,并已经获取了"Access Key"和"Secret Key"

然后你需要先下载一个库文件http://aws.amazon.com/code/Amazon-SES...,第一次使用需要先验证你是否是发件箱的所有者,你需要执行下列代码require_once 'ses.php';

$ses = new SimpleEmailService('Access Key Here', 'Secret Key Here');

// 这里填你需要作为发件箱的邮箱地址,这个地址必须存在,因为它会发一封邮件过去验证

print_r($ses->verifyEmailAddress('user@example.com'));

如果成功的话,会返回类似下面的内容Array

(

[RequestId] => 1b086469-291d-11e0-85af-df1284f62f28

)

这时候,登录到你刚才填写的邮箱里去,你会收到一封验证邮件,点击邮件里的验证链接即可完成验证步骤。

但是注意,这时候你还只能向自己发送邮件,不能其他任何第三方邮箱发送,因为此时你只是开发者状态,如果你需要向其他用户发送邮件,你需要向亚马逊“提出生产环境权限申请(Request Production Access)”。

点击这个链接提交申请,可能需要你填写每天发送的限额,你可以根据自己的需要申请,反正以后也是可以调整的。

需要注意的是你的限额不是一部到位的,也就是说如果你提出每天发送1万封邮件的限额,那么你第一天大概只能发送100封,然后第二天发送500封,以此类推,大概一周后你就可以发送一万封邮件了。这也是为了防止垃圾邮件制造者滥用这一服务。申请是人工审核的,所以需要等待一会,不过也没有几个小时。

当这一切都完成的了后,你就可以正常使用ses了,这里有php代码的示例,非常简单http://www.orderingdisorder.com/aws/s...update

发送中文的问题,只需要设置下编码即可$m = new SimpleEmailServiceMessage();

$m->addTo('recipient@example.com');

$m->setFrom('user@example.com');

$m->setSubject('我是中文标题');

$m->setMessageFromString('我是中文内容.');

// 再这里设置标题和内容编码

$m->setSubjectCharset('UTF-8');

$m->setMessageCharset('UTF-8');

print_r($ses->sendEmail($m));update

如果需要发送的是html内容,则需要使用setMessageFromString的第二个参数,这是专门用来发送html内容的,比如// 第一个参数可以留空

$m->setMessageFromString(NULL, '

这是html的测试

只是一个测试

');

如果要设置发送人名称的话,可以在setFrom的时候按照'发件人名称 '的格式来设置,比如$m->setFrom('Joyqi ');

但是如果你要把上面的Joyqi换成中文的话就会出现乱码,这时候你需要自己用base64_encode手动编码下,并指定编码格式,比如// 编码函数

function address_encode($str) {

return '=?UTF-8?B?' . base64_encode($str) . '?=';

}

$m->setFrom(address_encode('测试中文发件人') . ' ');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值