SMTP-AUTH richiesto ma il nome utente mancante
-
21-12-2019 - |
Domanda
Attualmente sto facendo Daniel Kehoe's Impara rubino su rotaie tutorial.Uno degli esercizi è di inviare un modulo di contatto dalla pagina di contatto utilizzando l'account Gmail di Google.
Tuttavia, quando ho inviato il modulo di contatto, invece di ottenere un'e-mail nella mia casella di posta, sto ottenendo questo errore:
"SMTP-AUTH richiesto ma mancante Nome utente"
Nel mio file Config / Application.yml, ho impostato il mio nome utente e la password Gmail.
Qualcuno ha un'idea quale potrebbe essere il problema?
Grazie per il tuo aiuto,
Anthony
Soluzione
per Rails 4.0 (Rails 4.1 utilizza un file segreto.yml per impostare le credenziali):
Controllare il file config / ambienti / sviluppo.rb , dovresti avere questo:
config.action_mailer.smtp_settings = {
address: "smtp.gmail.com",
port: 587,
domain: ENV["DOMAIN_NAME"],
authentication: "plain",
enable_starttls_auto: true,
user_name: ENV["GMAIL_USERNAME"],
password: ENV["GMAIL_PASSWORD"]
}
# ActionMailer Config
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
config.action_mailer.delivery_method = :smtp
config.action_mailer.raise_delivery_errors = true
# Send email in development mode.
config.action_mailer.perform_deliveries = true
.
Prova a sostituire ENV ["Gmail_UserName"] con il tuo nome utente Gmail.
È possibile impostare Ev ["Gmail_UserName"] nel tuo shell Unix.O impostalo nel file config / application.yml .Se il nome utente contiene qualsiasi carattere non alfa, potrebbe essere necessario racchiuderlo in citazioni nel file config / application.yml .
Altri suggerimenti
Basta ricontrollare il nome dei parametri per essere corretto.Per me cambiare username
in user_name
ha risolto il problema.
Se ti piace vedere errori, modificare il valore del config.action_mailer.raise_delivery_errors
in true
.
Ho rotaie 4 e non ha richiesto alcuna modifica delle impostazioni di funzionamento correttamente.
Grazie @toontje e @daniel kehoe