У меня есть следующие настройки для отправки электронной почты при регистрации:
Рельсы 3.0.7
ruby 1.9.2p180 (2011-02-18 редакция 30909) [x86_64-linux]
Установка плагина rails git: //github.com/collectiveidea/action_mailer_optional_tls.git
Mailer
class UserMailer < ActionMailer::Base
def registration_confirmation(user)
recipients user.email
from "webmaster@example.com"
subject "Thank you for Registering"
body :user => user
end
end
Контроллер:
def create
@user = User.new(params[:user])
if @user.save
UserMailer.deliver_registration_confirmation(@user)
sign_in @user
flash[:success] = "Welcome to ECE"
redirect_to @user
else
@title = "Sign up"
render 'new'
end
end
Вид:
Hi <%= @user.name %>, .....
Я получал ошибки соединения smtp и включил их в gemfile после поиска в Google.
Это решило ошибку
Gemfile
gem 'rack-ssl', :require => 'rack/ssl'
Config / окружающая среда / development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.middleware.insert_before ActionDispatch::Static, "Rack::SSL"
config.action_mailer.smtp_settings = {
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:authentication => :login,
:port => 587,
:domain => 'www.example.com',
:name => 'user@gmail.com',
:password => 'password',
}
Проблема
раньше я получал 535-5.7.1 Имя пользователя и пароль не принимаются.
Теперь там написано:
Ошибка соединения SSL
Невозможно установить безопасное соединение с сервером. Это может быть проблема с сервером или может потребоваться сертификат аутентификации клиента, которого у вас нет.
Ошибка 107 (net :: ERR_SSL_PROTOCOL_ERROR): ошибка протокола SSL.
Есть предложения?