Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails 4, how to correctly configure smtp settings (gmail)

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 => "[email protected]",     :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 => "[email protected]",     :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!

like image 919
ResrieC Avatar asked Sep 16 '14 15:09

ResrieC


People also ask

What is the correct SMTP for Gmail?

On your device or in the app, enter smtp.gmail.com as the server address. In the Port field, enter one of the following numbers: If you're using SSL, enter 465. If you're using TLS, enter 587.


1 Answers

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:            '[email protected]',   password:             'yourpassword',   authentication:       :plain,   enable_starttls_auto: true } 
like image 121
TarunJadhwani Avatar answered Oct 06 '22 11:10

TarunJadhwani