加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 无法使用gmail stmp服务器发送邮件(在话语中)

发布时间:2020-12-17 03:39:36 所属栏目:百科 来源:网络整理
导读:我正在尝试设置 discourse,这是一个rails3 webapp,但在使用gmail smtp服务器配置smtp时遇到一些问题. 我昨天注册了一个新的Gmail帐户,我可以登录浏览器和电子邮件客户端软件. 然后我在config / environments / production.rb文件中配置话语: config.action_
我正在尝试设置 discourse,这是一个rails3 webapp,但在使用gmail smtp服务器配置smtp时遇到一些问题.

我昨天注册了一个新的Gmail帐户,我可以登录浏览器和电子邮件客户端软件.

然后我在config / environments / production.rb文件中配置话语:

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
  :address   => "smtp.gmail.com",:port      => "587",:user_name => "smtp4shuzu@gmail.com",:password  => "12345678",:authentication => :plain,:domain => "shuzhu.org",:enable_starttls_auto => true
}

启动用于在后台发送邮件的sidekiq:

nohup bundle exec sidekiq > log/sidekiq.log 2>&1 &

然后在生产模式中开始讨论:

rails server -e production -d

但它不起作用.我可以在sidekiq.log中看到一些错误:

2013-03-01T03:06:02Z 30687 TID-qib28 WARN: {“retry”=>true,“queue”=>”default”,“class”=>”Jobs::UserEmail”,“args”=>[{“type”=>”signup”,“user_id”=>42,“email_token”=>”b40a21ece2b14586e346abfd96685975”,“current_site_id”=>”default”}],“jid”=>”558bb6bd5aa36cfc8d3d1e91”,“error_message”=>”Connection refused – connect(2)”,“error_class”=>”Errno::ECONNREFUSED”,“failed_at”=>2013-03-01 03:06:02 UTC,“retry_count”=>0}
2013-03-01T03:06:02Z 30687 TID-qib28 WARN: Connection refused – connect(2)
2013-03-01T03:06:02Z 30687 TID-qib28 WARN: /home/discourse/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/net/smtp.rb:540:in initialize'
/home/discourse/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/net/smtp.rb:540:in
open’
/home/discourse/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/net/smtp.rb:540:in `tcp_socket’

我尝试过各种smtp设置,但没有一个能够正常工作.

更新:

Per @ Basil的答案,我刚试过:

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
  :address   => "smtp.gmail.com",:port      => 587,:user_name => "smtp4shuzu",:authentication => "plain",:enable_starttls_auto => true
}

但它有同样的错误.域shuzu.org是我的网站的域名,我在想我应该将它传递给smtp.现在我删除了它,但仍然无法正常工作.

解决方法

最后,我发现了(愚蠢的)原因.

我应该在生产模式下启动sidekiq:

nohup bundle exec sidekiq -e production > log/sidekiq.log 2>&1 &

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读