Ruby on rails rails应用程序不发送电子邮件
Developerment.rbRuby on rails rails应用程序不发送电子邮件,ruby-on-rails,ruby,Ruby On Rails,Ruby,Developerment.rb myapp::Application.configure do config.cache_classes = false #config.whiny_nils = true config.consider_all_requests_local = true config.action_view.debug_rjs = true config.action_controller.perform_cachi
myapp::Application.configure do
config.cache_classes = false
#config.whiny_nils = true
config.consider_all_requests_local = true
config.action_view.debug_rjs = true
config.action_controller.perform_caching = false
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
#config.action_mailer.delivery_method = :sendmail
config.active_support.deprecation = :log
config.action_dispatch.best_standards_support = :builtin
# config.log_level = :error
end
#log ActiveRecord
ActiveRecord::Base.logger = Logger.new(STDOUT) if defined? Rails::Console
我在日志文件中看到消息“Sent mail to name1”。name2@domain.com".
我玩过这句台词
#config.action_mailer.delivery_method = :sendmail
通过取消对此的注释并提供所有这些选项
:smtp、:sendmail或:test,
,但似乎都不起作用。如果使用smtp发送电子邮件,请确保在config/environments/$RAILS_ENV.rb文件中包含服务器配置。以下是一个例子:
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'example.com',
user_name: '<username>',
password: '<password>',
authentication: 'plain',
enable_starttls_auto: true }
config.action\u mailer.delivery\u method=:smtp
config.action\u mailer.smtp\u设置={
地址:'smtp.gmail.com',
港口:587,
域:“example.com”,
用户名:“”,
密码:“”,
身份验证:“普通”,
启用\u starttls\u auto:true}
您是否已将服务器设置配置为发送电子邮件?你可以通过ActionMailer::Base来实现这一点。检查:@Mavis,我在我的应用程序中配置了这个,ActionMailer::Base.register_interceptor(SMInterceptor)你是在尝试使用smtp还是sendmail服务器发送电子邮件?@Mavis,我使用的是smtpAlso你可以包括:config.action_mailer.default_url_options={:host=>'localhost:3000'}-通过它在上面添加,上面的块。production.rb将反映实际的hostname@user3677652当您在生产中遇到错误时,添加带有主机名和生产名称的行,然后您可能会发现我的评论对文章更有用