使用 Amazon EC2 实例发送邮件
Posted
技术标签:
【中文标题】使用 Amazon EC2 实例发送邮件【英文标题】:Send Mail Using Amazon EC2 Instance 【发布时间】:2013-11-20 10:15:39 【问题描述】:我在我的一个项目中使用 Amazon EC2 实例,我已经在 linux 服务器上安装了 LAMP,现在当我尝试使用简单功能发送电子邮件时,它没有发送电子邮件也没有给出任何错误。
到目前为止我所做的事情。
已创建 SES 帐户。 使用了简单的邮件功能。 在安全组中启用端口 25。【问题讨论】:
将sendmail安装为***.com/a/24790187/248616下面回答比使用SES要好得多我认为 【参考方案1】:我只是通过在我的实例中安装 sendmail 解决了这个问题。只需在终端中运行以下命令
sudo apt-get install sendmail
这对我有用
【讨论】:
非常感谢!这对我来说很简单,无需使用 SES! 我按照他们使用 Postfix/SES 的教程进行操作,我花了很长时间来设置它,几个小时。这需要几秒钟! 如果您在 ec2 实例上,请使用 sudo yum install sendmail 简单最好的:)谢谢【参考方案2】:如果您使用的是 amazon ec2 ami/linux 发行版,请在 SSH 中使用“sudo yum install sendmail”
【讨论】:
对于 AWS EC2 上的 Ubuntu,使用; sudo apt-get install sendmail【参考方案3】:虽然您的问题与 Sendmail 有关,但您是否尝试过遵循 Amazons 文档?
http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp-app.html
这使用后缀,但它似乎是一个更好的选择,并且有现成的帮助。
您也可以使用 SMTP,因为 Amazon SES 支持:
http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-smtp.html
我知道这并不能直接回答您的问题。您可能只需要在php.ini
中配置mail
设置。
【讨论】:
谢谢哥们,我已经安装了“POSTFIX”,现在它工作正常 如果一切都已解决,您可能希望接受答案【参考方案4】:如果您使用的是 AWS SES,则需要确保先验证帐户:
http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html
除了包含标签的地址(见下文)之外,您必须验证将用作邮件“发件人”或“返回路径”地址的每个电子邮件地址。 整个电子邮件地址区分大小写。例如,如果您验证了 sender@example.com,则您无法从 sender@EXAMPLE.com 发送电子邮件,除非您也验证了 sender@EXAMPLE.com。 (但是,域验证不区分大小写。有关更多信息,请参阅在 Amazon SES 中验证域。)
在您被授予对 Amazon SES 的生产访问权限之前,您还必须验证每个收件人的电子邮件地址,Amazon SES 邮箱模拟器提供的收件人除外。有关邮箱模拟器的更多信息,请参阅测试 Amazon SES 电子邮件发送。有关生产访问权限的更多信息,请参阅请求对 Amazon SES 的生产访问权限。
【讨论】:
【参考方案5】:或者,可以按照以下链接中提到的说明进行操作。在这种方法中,不需要安装 postfix、sendmail 或任何其他邮件服务器。
它使用 PHPMailer 类使用 SMTP 接口通过 Amazon SES 发送电子邮件。
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-using-smtp-php.html
我花了一整天的时间才找到这个更简单的解决方案。
【讨论】:
以上是关于使用 Amazon EC2 实例发送邮件的主要内容,如果未能解决你的问题,请参考以下文章
使用第三方 smtp 服务器时的 AWS EC2 电子邮件发送限制