Estou enviando email do meu aplicativo Rails. Funciona bem no ambiente de desenvolvimento, mas falha na preparação. Estou tendo o erro a seguir:
Net::SMTPAuthenticationError (534-5.7.14 <https://accounts.google.com/ContinueSignIn?plt=AKgnsbtdF0yjrQccTO2D_6)
Observe que não tenho um nome de domínio para minha preparação.
Aqui estão minhas configurações em staging.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { :host => "my.ip.addr.here:80" }
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => 'my.ip.addr.here:80'
:user_name => "[email protected]",
:password => "my_email_password",
:authentication => 'login'
}
Por favor ajude.
Editar.
Depois de adicionar a :tls => true
opção, recebo
OpenSSL::SSL::SSLError (Unrecognized SSL message, plaintext connection?)
E então eu mudei a porta para 25 e agora eu entendo (com 30 segundos de atraso):
Timeout::Error (execution expired)
Respostas:
Eu tive o mesmo problema: emails eram enviados do desenvolvimento, mas não da produção (de onde eu estava recebendo
Net::SMTPAuthenticationError
). Isso me levou a concluir que o problema não era com a configuração do meu aplicativo, mas com o Google.Motivo : o Google estava bloqueando o acesso de local desconhecido (aplicativo em produção)
Solução : vá para http://www.google.com/accounts/DisplayUnlockCaptcha e clique em continuar (isso concederá acesso por 10 minutos para registrar novos aplicativos). Depois disso, meu aplicativo em produção começou a enviar e-mails;)
fonte
lesssecureapps
configuração usando autenticação multifator e habilitando uma senha específica do aplicativo para o meu servidor Rails.Net::SMTPAuthenticationError ...ContinueSignIn...
. Então tentei fazer o mesmo após 10 minutos e começou a funcionar.Esta solução está funcionando para mim:
É verdade que o Google bloqueará sua tentativa de login, mas você pode alterar suas configurações em https://www.google.com/settings/security/lesssecureapps para que sua conta não seja mais protegida por padrões de segurança modernos.
fonte
Resolvido! Eu simplesmente mudei a senha da minha conta do gmail e de alguma forma os erros desapareceram.
Depois de uma dúzia de mudanças, as configurações finais que obtive são:
fonte
acesse o link a seguir e ative https://www.google.com/settings/security/lesssecureapps
fonte
A solução acima forneceu as configurações corretas (que eu já tinha), mas não resolveu o problema. Depois de tentativas contínuas, continuei recebendo o mesmo erro. Acontece que eu tive que "limpar o CAPTCHA" da web. Consulte a documentação do gmail para obter detalhes.
Você também pode ir direto para a página "limpar o CAPTCHA" aqui .
fonte
Muito mais tarde, mas apenas no caso de ajudar alguém .. Acabei de ligar para a Central de Ajuda do Google Apps e eles foram instruídos a alterar a configuração de lesssecureapps (como todos os outros), mas também a alterar a porta para 465.
No meu caso, isso funcionou!
fonte
Eu tive o mesmo problema.
Solução:
Você pode ativar a
less secure apps
opção ( aqui ).https://myaccount.google.com/lesssecureapps
E desbloquear o Captcha ( link ):
https://accounts.google.com/DisplayUnlockCaptcha
fonte
Olá, isso também funcionou para mim e se alguém ainda estiver tendo problemas, experimente.
Certifique-se de ter figaro em seu gemfile. Para salvar informações confidenciais, como nome de usuário e senha, como variáveis de ambiente
E em seu config / environment / development.rb, cole os códigos abaixo usando smtp como método de entrega
Configurações de SMTP para gmail
Em seu diretório de configuração, crie um arquivo chamado application.yml e adicione os códigos abaixo.
Você deve usar seu e-mail e senha para autenticação no arquivo.
fonte
Eu também enfrentei o problema e, após algumas pesquisas nas configurações do Gmail, encontrei a solução:
No gmail, vá para as configurações.
Selecione a guia "Encaminhamento e POP / IMAP".
Na seção de acesso IMAP, selecione "Ativar IMAP".
fonte
A resposta aceita parece muito antiga, não sei se naquela época existia a seguinte (melhor) solução:
config.action_mailer.smtp_settings
Agora, o envio de emails funciona perfeitamente!
fonte
Para resolver esse problema:
Se você vir : Net :: SMTPAuthenticationError (535-5.7.8 Nome de usuário e senha não aceitos.) , Você precisa permitir que aplicativos menos seguros façam login em sua conta do Google. Para habilitar o login de aplicativos menos seguros, siga: https://myaccount.google.com/lesssecureapps? . Mas permitirá que todos os aplicativos façam login. Se você deseja personalizá-lo, consulte: https://support.google.com/a/answer/6260879?hl=en
Então, pode ser possível que você obtenha Net :: SMTPAuthenticationError (534-5.7.14) , portanto, para resolver isso consulte: pli = 1http: //www.google.com/accounts/DisplayUnlockCaptcha. Depois disso, clique em continuar na página para ser redirecionado. Ele verificará seu Captcha e seu aplicativo será verificado para usar sua conta do Google para enviar e-mails.
NOTA: Certifique-se de estar usando as credenciais corretas de sua conta do gmail.
Se você não estiver disposto a permitir todos os aplicativos, consulte: https://support.google.com/a/answer/6260879?hl=en . No link, vá para Usar alternativas para aplicativos menos seguros , isso o guiará para uma maneira alternativa de permitir o acesso de aplicativos menos seguros à sua conta do Google.
fonte
Tive o mesmo problema e após algumas tentativas e erros, cheguei a esta resolução que é uma opção para ser habilitada no google:
Clique em https://www.google.com/settings/u/0/security/lesssecureapps
Habilite 'Acesso para aplicativos menos seguros' aqui, fazendo login com o endereço de e-mail fornecido na configuração smtp.
fonte