玩WordPress的朋友们肯定都踩过一个坑:网站的邮件发不出去。不管是用户注册、密码找回,还是评论通知,邮件系统一罢工,网站的互动功能基本就瘫痪了一半。这主要是因为大部分虚拟主机自带的`mail()`函数不怎么靠谱,很容易被当成垃圾邮件给拦截了。想解决这问题,最稳妥的办法就是用SMTP发信,而说到SMTP服务,亚马逊的SES(Simple Email Service)绝对是个隐藏的宝藏。
为啥这么说?如果你用过亚马逊云(AWS),就知道他们对新用户相当大方,送一大堆免费服务。其中就包括这个SES邮件推送服务,每个月有几千封的免费额度,对于咱们个人博客或者小企业网站来说,简直就是白给的福利,而且还特别稳定。今天,我就手把手带大家走一遍流程,用免费的FluentSMTP插件,把我们的WordPress网站和高大上的Amazon SES服务对接起来,彻底告别邮件发送失败的烦恼。
第一步,咱先在WordPress后台搜一下“FluentSMTP”这个插件,直接安装启用。这插件口碑不错,免费还功能强大。装好之后,在设置里你就能看到它支持一大堆邮件服务商,咱们的目标很明确,就是找到Amazon SES。
当然,光有插件还不行,我们得去亚马逊云那边搞定SES服务。如果你还没AWS账号,赶紧去注册一个,新用户能薅不少羊毛,除了邮件服务,还有免费的云服务器、对象存储啥的,相当香。接下来的配置信息,全都要从AWS的后台里获取。
接下来就是最关键,也可能是最劝退的一步:配置AWS。别怕,跟着我的截图一步步来,没那么复杂。
首先,我们得在AWS后台找到IAM服务,这是用来管理用户和权限的地方。咱们要创建一个专门给WordPress发邮件用的子用户,而不是直接用最高权限的root账号,这是安全操作的基本常识。
在IAM里,选择“用户”,然后点击“创建用户”。
给这个用户起个好记的名字,比如我就叫它“FluentSMTP”,这样以后一看就知道是干嘛的。然后直接点下一步。
接下来是设置权限,选择“直接附加策略”。在搜索框里分别搜一下“sesfull”和“snsfull”,然后把 `AmazonSESFullAccess` 和 `AmazonSNSFullAccess` 这两个策略都勾上。这就等于告诉AWS,这个子用户有权使用SES和SNS的所有功能。
一路“下一步”创建完毕,我们就能在用户列表里看到刚才创建好的用户了。
还没完,我们还需要给这个用户创建一个“访问密钥”,这玩意儿就相当于它的账号密码,是给FluentSMTP插件用的。
选择“其他”作为使用案例,然后创建密钥。创建成功后,你会看到“访问密钥 ID”和“私有访问密钥”。
重点来了: 这个“私有访问密钥”只显示这一次!关掉页面就再也找不到了。所以,务必、一定、马上把它复制下来,保存到安全的地方。我一般是直接新建个记事本先贴进去,等配置完了再删掉。
现在,回到WordPress后台的FluentSMTP插件设置界面。把刚才复制的访问密钥ID和私有访问密钥,分别填到对应的框里。再设置好你的发件人邮箱和发件人名称。注意,AWS的区域要选对,就是你AWS后台右上角显示的那个区域。填完后点保存,插件会自动测试一下连接,如果密钥或区域不对,它会报错提示的。
做到这一步,你可能会以为大功告成了,但其实还有最关键的一步没做。这时候你的SES服务还处于“沙盒模式”。
啥是沙盒模式?说白了就是个测试环境。在这种模式下,你只能给那些已经在SES后台验证过的邮箱地址发邮件,主要是为了防止有人滥用AWS来发垃圾邮件。要想给网站的任意注册用户发邮件,就必须向AWS申请“生产访问权限”,也就是解除沙盒模式。这个申请过程需要你提交一个工单,简单说明一下你的用途(比如:用于我个人博客 zhujipindao.com 的用户注册、密码找回等事务性邮件),一般一两天就能审批下来。
总的来说,整个流程就是:装插件 -> 创建AWS子用户并授权 -> 获取密钥 -> 填入插件 -> 申请解除沙盒。虽然第一次配置看起来步骤有点多,但只要搞定一次,以后你的WordPress网站就拥有了一个专业、稳定还几乎免费的邮件发送系统。这比折腾服务器自带的邮件功能可省心多了,强烈推荐大家试试!
评论前必须登录!
注册