535-5.7.8 Имя пользователя и пароль не принимаются
У меня есть контактная форма, и после отправки я получаю Net:: SMTPAuthenticationError 535-5.7.8 Username and Password not accepted
Указывает на действие create в контроллере контактов ContactMailer.new_contact(@contact).deliver
Я перезапустил сервер. Я попробовал https://accounts.google.com/DisplayUnlockCaptcha.
Я в разработке.
Контроллер контактов:
def new
@contact = Contact.new
end
def create
@contact = Contact.new(params[:message])
if @contact.valid?
ContactMailer.new_contact(@contact).deliver
flash[:notice] = "Message sent! Thank you for contacting us."
redirect_to root_url
else
render :action => 'new'
end
end
end
Development.rb:
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'gmail.com',
user_name: '[email protected]',
password: 'password',
authentication: 'plain',
enable_starttls_auto: true }
config.action_mailer.default_url_options = { :host => "localhost:3000" }
Ответы
Ответ 1
Во-первых, вам нужно использовать действительную учетную запись Gmail с вашими учетными данными.
Во-вторых, в моем приложении я не использую TLS auto, попробуйте без этой строки:
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'gmail.com',
user_name: '[email protected]',
password: 'YOUR_PASSWORD',
authentication: 'plain'
# enable_starttls_auto: true
# ^ ^ remove this option ^ ^
}
Ответ 2
У меня была та же проблема. Теперь его рабочий штраф после внесения изменений ниже.
https://www.google.com/settings/security/lesssecureapps
Вы должны изменить "Доступ для менее безопасных приложений" на "Включено" (он был включен, я отключен и вернулся к включенному). Через некоторое время я могу отправить электронное письмо.
Ответ 3
Я сделал все, от посещения http://www.google.com/accounts/DisplayUnlockCaptcha до настройки 2-fa и создания пароля приложения. Единственное, что сработало, заключалось в регистрации http://mail.google.com и отправке электронной почты с самого сервера.
Ответ 4
Goto config/initializers/setup_mail.rb
Проверьте, соответствует ли конфигурация конфигурации, записанной в файле development.rb
. В обоих файлах должно выглядеть следующим образом:
config.action_mailer.smtp_settings = {
:address =>"[email protected]",
:port => 587,
:domain => "gmail.com",
:user_name => "[email protected]",
:password => "********",
:authentication => 'plain',
:enable_starttls_auto => true,
:openssl_verify_mode => 'none'
}
Это, безусловно, решит вашу проблему.
Ответ 5
Если вы все еще не можете решить проблему после включения less secure apps
.
Другая возможная причина, которая может вызвать эту ошибку, заключается в том, что вы не используете учетную запись gmail.
- : user_name => '[email protected]' , # It can not be used since it is not a gmail address
+ : user_name => '[email protected]' , # since it a gmail address
Обратитесь к здесь.
Также учтите, что для less secure apps
может потребоваться несколько раз. Я должен сделать это несколько раз (прежде чем он будет работать, каждый раз, когда я получаю доступ к ссылке, это покажет, что это off
), и подождите некоторое время, пока оно действительно не работает.
Ответ 6
установите для параметра raise_delivery_errors значение false вместо true в вашем development.rb
config.action_mailer.raise_delivery_errors = false