我正在寻找一种方法来testing一些本地开发应用程序的电子邮件发送function,即在http://localhost:[some-port]
我正在通过Mailchimp使用Mandrill和Node.js上的官方Mandrill API模块 。
Mandrill需要为发送域设置一些DKIM / SPF设置,我不知道如何将我的localhost设置为发送域 。
从他们的文档:
您需要添加SPF和DKIMlogging,并validation您的发送域名的所有权,然后才能通过您的帐户发送电子邮件。 Mandrill将不会发送任何未经validation的域名或域名的电子邮件,而无需有效的SPF和DKIMlogging,包括gmail.com,yahoo.com等公共域名。
所以基本上Mandrill需要为每个域设置发送域和DKIM / SPF设置
我已经成功地设置了我的主&现场( www.something.com )域的设置,但现在我想也设置localhost所以我可以testing当做本地开发
localhost设置为发送域,导致“拒绝/未签名”错误 当然,如果我不将localhost设置为发送域,任何尝试发送邮件都会导致此错误:
[ { email: '[email protected]', status: 'rejected', _id: 'bdbd8317b1a14986852b93e12a24246e', reject_reason: 'unsigned' } ]
localhost设置为发送域 有没有一种真正的方法来将localhost设置为发送域 ?
注意:我已经使用testingAPI密钥进行了testing
您应该将电子邮件作为公有DNS中的有效域发送。 这允许DKIM和SPF查找按预期运行。 您可以使用与production / live相同的域名,但是您可能希望像dev.something.com这样的子域名成为发送域名。 这将需要它自己的SPF / DKIM DNS条目。
大多数收件人域不接受来自未经身份validation/未经validation的来源的电子邮件。 所以是的,你需要拥有一个域名。 从EasyDNS获得免费域名就足够了,等等。你不一定需要二级域名。 您需要通过接收电子邮件服务器来添加区域上的TXTlogging和CNAME以进行公共查询。