AWS上Bitnami WordPress无法发送邮件求助
解决AWS上Bitnami WordPress邮件发送故障的步骤
1. 配置AWS SES作为邮件发送服务
AWS默认限制EC2实例的25端口出站,推荐使用SES(Simple Email Service)作为官方邮件解决方案:
- 登录AWS控制台进入SES服务,先验证你的域名或发件人邮箱(沙盒模式下仅能发送到已验证邮箱)
- 在SES中生成SMTP凭证(用户名和密码),记录对应区域的SMTP服务器地址(如
email-smtp.us-east-1.amazonaws.com)、端口(587对应TLS,465对应SSL) - 在WordPress后台安装并配置WP Mail SMTP插件,选择「Other SMTP」模式,填入SES的SMTP参数,保存后测试邮件发送
2. 检查Bitnami环境的本地邮件服务
Bitnami默认可能未启用本地邮件服务,可通过以下步骤排查:
- 用SSH登录EC2实例,执行命令查看Postfix状态:
sudo /opt/bitnami/ctlscript.sh status postfix - 如果Postfix未运行,启动服务:
sudo /opt/bitnami/ctlscript.sh start postfix - 测试本地邮件发送:
echo "测试邮件内容" | mail -s "测试主题" your-email@example.com,检查收件邮箱是否收到
3. 确认EC2安全组出站规则
确保EC2实例的安全组开放必要的邮件端口出站:
- 添加出站规则:允许TCP端口587、465访问0.0.0.0/0(或仅允许SES服务器IP段,提升安全性)
- 避免使用25端口,AWS对EC2实例的25端口有严格限制,极易被拦截
4. 查看日志定位具体错误
通过日志查找故障根源:
- 查看Bitnami WordPress错误日志:
tail -f /opt/bitnami/apps/wordpress/logs/wp-errors.log - 查看Apache日志:
tail -f /opt/bitnami/apache2/logs/error_log - 搜索
wp_mail、SMTP、sendmail等关键词,定位邮件发送失败的具体错误(如认证失败、连接超时等)
5. 验证SES账户状态
- 新创建的SES账户默认处于沙盒模式,仅能发送到已验证的收件邮箱,如需发送到任意邮箱,需提交申请移出沙盒
- 检查SES的发送配额,确认未超出每日发送限制或每秒发送限制
内容的提问来源于stack exchange,提问作者Dantes
相关产品推荐
相关产品推荐

