Rails,交易电子邮件和发件人验证
Rails, transactional email and sender validation
我想使用 Sendinblue
从我的 Rails 网络应用程序发送交易电子邮件。
为了配置我的应用程序以使用 Sendinblue,我编辑了 config/environments/production.rb
如下(注意:fireworks.com
只是一个例子):
Rails.application.configure do
...
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
host = 'fireworks.com'
config.action_mailer.default_url_options = { host: host }
ActionMailer::Base.smtp_settings = {
:address => 'smtp-relay.sendinblue.com',
:port => '587',
:authentication => :plain,
:user_name => ENV['SENDINBLUE_USERNAME'],
:password => ENV['SENDINBLUE_PASSWORD'],
:domain => 'fireworks.com',
:enable_starttls_auto => true
}
...
end
我需要 gem,比如 sib-api-v3-sdk
吗?
我想这个 gem 仅对使用 Sendinblue API.
发送电子邮件有用
在 Sendinblue,我验证了我的域 'fireworks.com' 并创建了一个发件人 noreply@fireworks.com
,我将使用它来激活帐户。
app/mailers/application_mailer.rb
class ApplicationMailer < ActionMailer::Base
default from: "noreply@fireworks.com"
layout 'mailer'
end
为了让我使用这个发件人,Sendinblue 要我验证(或验证)它。
现在的重点是 noreply@fireworks.com
不存在。 Michael Hartl 在他的教程中使用 noreply@example.com
,我会使用 noreply@fireworks.com
,因为我拥有 fireworks.com
域。
由于我无法验证发件人,我认为唯一的解决方案是在我的服务器中创建 noreply
用户帐户,配置 Postfix 以接收来自 Internet 的电子邮件并将 MX 记录添加到我的 DNS 区域。
在收到验证电子邮件之前,我会保持此配置。
这个解决方案有必要吗?我还有其他选择吗?
Now the point is that noreply@fireworks.com does not exist.
在继续之前,我想指出这最终不是一个好的做法。您需要一些地址来接收和识别退回邮件。
话虽如此,我只是检查了他们的文档,上面说 here 您可以通过 DNS 条目、文件上传或向他们发送电子邮件来验证整个域,而不是验证单个电子邮件地址。
我想使用 Sendinblue
从我的 Rails 网络应用程序发送交易电子邮件。
为了配置我的应用程序以使用 Sendinblue,我编辑了 config/environments/production.rb
如下(注意:fireworks.com
只是一个例子):
Rails.application.configure do
...
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
host = 'fireworks.com'
config.action_mailer.default_url_options = { host: host }
ActionMailer::Base.smtp_settings = {
:address => 'smtp-relay.sendinblue.com',
:port => '587',
:authentication => :plain,
:user_name => ENV['SENDINBLUE_USERNAME'],
:password => ENV['SENDINBLUE_PASSWORD'],
:domain => 'fireworks.com',
:enable_starttls_auto => true
}
...
end
我需要 gem,比如 sib-api-v3-sdk
吗?
我想这个 gem 仅对使用 Sendinblue API.
在 Sendinblue,我验证了我的域 'fireworks.com' 并创建了一个发件人 noreply@fireworks.com
,我将使用它来激活帐户。
app/mailers/application_mailer.rb
class ApplicationMailer < ActionMailer::Base
default from: "noreply@fireworks.com"
layout 'mailer'
end
为了让我使用这个发件人,Sendinblue 要我验证(或验证)它。
现在的重点是 noreply@fireworks.com
不存在。 Michael Hartl 在他的教程中使用 noreply@example.com
,我会使用 noreply@fireworks.com
,因为我拥有 fireworks.com
域。
由于我无法验证发件人,我认为唯一的解决方案是在我的服务器中创建 noreply
用户帐户,配置 Postfix 以接收来自 Internet 的电子邮件并将 MX 记录添加到我的 DNS 区域。
在收到验证电子邮件之前,我会保持此配置。
这个解决方案有必要吗?我还有其他选择吗?
Now the point is that noreply@fireworks.com does not exist.
在继续之前,我想指出这最终不是一个好的做法。您需要一些地址来接收和识别退回邮件。
话虽如此,我只是检查了他们的文档,上面说 here 您可以通过 DNS 条目、文件上传或向他们发送电子邮件来验证整个域,而不是验证单个电子邮件地址。