0

我对 Ruby on Rails 相当陌生,实际上对网站邮件完全陌生。在许多示例教程中,我看到分配给例如“new@example.com”的“来自”对象。当我在 localhost 上设置电子邮件功能时,RoR 命令提示符说即使我将“new@example.com”保留为 from 对象,一切都已完成。我真的可以从本地主机端口发送邮件吗?为了从我的本地 Web 应用程序实际发送邮件,我必须输入什么作为“发件人”地址?我只有一封普通的电子邮件吗?如何进行身份验证以确保“发件人”地址实际上是真实地址?

这似乎是一个非常基本的概念,我理解所有模型/视图/控制器操作必须完成才能使其工作,但我很困惑我猜它实际上是如何工作的

4

1 回答 1

1

通常,该from字段可以是任何东西。

如果某些邮件服务器认为您声称自己不是某个人,它们可能会采取行动,例如阻止邮件或将其标记为垃圾邮件(通过 DKIM 或 SPF 等机制)。这些都是在域级别完成的,即邮件服务器尝试确定与它通信的服务器是否被允许发送声称来自@example.com 的电子邮件。

如果其他邮件服务器知道您是谁,则邮件只是默默地重写您的发件人字段,例如,如果您正在与 gmail smtp 服务器通话并已通过 bob 身份验证,则发件人字段将设置为 bob@gmail.com,除非它是已设置为 gmail 知道您拥有的电子邮件地址。

默认情况下,开发中的 rails 根本不会尝试发送电子邮件。要让它发送电子邮件,您需要配置deluvery_method,通常这涉及将其设置为:sendmail(如果您在本地运行适当配置的 sendmail 实例)或设置为:smtp并提供要使用的 smtp 服务器的详细信息。

于 2012-01-03T11:27:27.193 回答