Ответ 1
Эта ошибка вызвана тем, что мои config/initializers/devise.rb не указали правильный адрес электронной почты для config.mailer_sender
.
Я получаю эту ошибку при создании при попытке создать пользователя (я использую самородку разработки).
EOFError (end of file reached):
Я ударил эту проблему раньше, и это было связано с моими настройками smtp с использованием zoho mail.
Я считаю, что моя конфигурация ниже - это проблема:
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => "smtp.zoho.com",
:port => 465,
:domain => 'example.com',
:user_name => '[email protected]',
:password => 'password',
:authentication => :login,
:ssl => true,
:tls => true,
:enable_starttls_auto => true
}
Теперь мы добавили SSL на сайт, и я считаю, что именно это вызывает эту ошибку.
Есть ли у кого-нибудь представление об этой ошибке или настройках smtp для zoho mail с SSL?
Эта ошибка вызвана тем, что мои config/initializers/devise.rb не указали правильный адрес электронной почты для config.mailer_sender
.
Также! Я сделал эту дополнительную ошибку и имел ту же проблему: я использовал свой собственный домен вместо домена почтового сервера для переменной "domain".
Ваша переменная среды должна быть:
GMAIL_DOMAIN=gmail.com
Или для примера выше:
:domain => 'gmail.com',
Здесь работает рабочий вызов pony
.
Pony.mail({
:to => '[email protected]',
subject: "Pony ride",
body: "Awesome!",
from: "[email protected]", # this MUST be the sending Zoho email.
:via => :smtp,
:via_options => {
:address => 'smtp.zoho.com',
:port => '465',
:enable_starttls_auto => true,
ssl: true,
:user_name => '[email protected]', # MUST be identical to :from.
:password => 'yourStrongPw',
:authentication => :login,
}
})
Я нашел одну причину ошибки здесь = > fooobar.com/info/178567/...
Но это не решило мою проблему. Хотя я не получал никаких ошибок, мои письма все еще не работали через Zoho, поэтому я нашел другое решение, которое отлично работает для моих нужд...
1) Подключите Zoho к gmail с помощью SMTP. Я настраиваю свою электронную почту zoho как псевдоним для моей личной учетной записи gmail, поэтому zoho электронной почты отправляются в gmail, и я могу ответить им в gmail из моего zoho адреса электронной почты. Это должно быть сделано так или иначе, так что вам никогда не придется входить в зоо. Просто сделайте все по электронной почте из gmail.
2) Подключите ActionMailer к учетной записи Gmail NOT zoho.
config.action_mailer.smtp_settings = {
:address => 'smtp.gmail.com',
:port => 587,
:user_name => ENV["gmail_username"],
:password => ENV["gmail_password"],
:authentication => :plain,
:enable_starttls_auto => true
}
Теперь мне просто нужно указать значения и в значениях в почтовом устройстве, например:
def notify_admin (message_details)
@message_details = message_details
mail(to: "[email protected]", subject: "Contact form filled out by: " + message_details[:name], from: message_details[:email])
end
Это работает, когда я хочу отправлять электронные письма себе, как это показано выше, когда кто-то отправляет контактную форму.
Он также работает, когда я хочу отправить электронное письмо из своего домена, например, когда он заполнит свинцовый магнит. Все, что я сделал, это переключить на: и с: адреса.