Rails 4,如何正确配置smtp设置(gmail) [英] Rails 4, how to correctly configure smtp settings (gmail)
问题描述
现在我可以填写我的表单框并点击发送。在我的rails服务器上,它表示邮件已经出站到我的电子邮件地址,但是我的Gmail邮箱没有收到任何信息,所以我认为我的smtp设置是不对的。我的smtp设置是:
... config / environments / development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = {:host => 'localhost:3000'}
config.action_mailer.delivery_method =:smtp
config.action_mailer.smtp_settings = {
:address => smtp.gmail.com,
:port => 587,
:domain => mydomain.net,
:user_name => mygmailusername@gmail.com,
:password => myGmailPassword,
:authentication => plain,
:enable_starttls_auto => true
}
另外我还添加了
... / config / initializers / smtp_settings.rb
ActionMailer :: Base.smtp_settings = {
:address = > smtp.gmail.com,
:port => 587,
:domain => mydomain.net,
:user_name => gmailuser@gmail.com,
:password => gmailPassword,
:authentication => plain,
:enable_starttls_auto => true
}
我缺少/做错了什么?我已经玩了几个东西(将default_url更改为端口1025,更改为:port =>587到:port => 587),没有成功。
感谢您的帮助!
您必须正确设置域名。目前在代码中发布了其mydomain.net。如果要通过gmail发送,请将其更改为 gmail.com 。
config.action_mailer。 smtp_settings = {
address:'smtp.gmail.com',
port:587,
domain:'gmail.com',
user_name:'xyz@gmail.com' ,
密码:'yourpassword',
身份验证::plain,
enable_starttls_auto:true
}
I am trying to create a contact form in Rails 4. I did some digging around here and was able to get most of the stuff to work. (followed @sethfri's work here Contact Form Mailer in Rails 4)
Right now I am able to fill out my form box and hit send. In my rails server it says the mail was outbound to my email address, but I don't receive anything in my gmail box, so I think my smtp settings aren't right. My smtp settings are:
...config/environments/development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => "587",
:domain => "mydomain.net",
:user_name => "mygmailusername@gmail.com",
:password => "myGmailPassword",
:authentication => "plain",
:enable_starttls_auto => true
}
Also I added in .../config/initializers/smtp_settings.rb
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => "587",
:domain => "mydomain.net",
:user_name => "gmailuser@gmail.com",
:password => "gmailPassword",
:authentication => "plain",
:enable_starttls_auto => true
}
What am I missing/doing wrong? I've played around with a couple things (changed default_url to port 1025, changed :port => "587" to :port => 587) with no success.
Thanks for the help!
You have to set the domain correctly. Currently in the code posted its "mydomain.net". Change it to gmail.com if you want to sent it via gmail.
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'gmail.com',
user_name: 'xyz@gmail.com',
password: 'yourpassword',
authentication: :plain,
enable_starttls_auto: true
}
这篇关于Rails 4,如何正确配置smtp设置(gmail)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!