首页 > 解决方案 > rails actionMailer 明显丢失发件人地址失败

问题描述

仅将 postfix 用于 sendmail 的应用程序重新配置为:

inet_interfaces = loopback-only

从初始all值。postfix 被重新启动,然后邮件停止从应用程序传递,而来自系统的测试邮件将是。

邮件程序不使用默认值,因为正在为不同的域提供服务。

因此,mailer 操作指定:

if @event.user.email_admin.nil?
  mail(from: "confirm@stourism.events", to: @event.user.email, bcc: "confirm@stourism.events,jr@iwgo.com", subject: t('event_mailer.subject') )
else
  mail(from: "confirm@stourism.events", to: @event.user.email, cc: @event.user.email_admin, bcc: "confirm@stourism.events,jr@iwgo.com", subject: t('event_mailer.subject') )
end

日志状态

EventMailer#contact: processed outbound mail in 2664.5ms I, [2018-09-02T13:53:14.215007 #4797]  
INFO -- : Sent mail to user@some.ws (7.3ms) D, [2018-09-02T13:53:14.215081 #4797] 
DEBUG -- : Date: Sun, 02 Sep 2018 13:53:14 +0200 
To: user@some.ws 
Cc: confirm@stourism.events

[...]

ArgumentError (SMTP From address may not be blank: nil):   app/controllers/events_controller.rb:94:in `package'

该特定控制器方法提到的状态:

EventMailer.contact(@event.id).deliver_now

production.rb 定义

  config.action_mailer.default_url_options = { host: 'stourism.events' }
  config.action_mailer.delivery_method = :sendmail

后缀更改后哪里出错了?

标签: ruby-on-railsactionmailerpostfix-mta

解决方案


推荐阅读