Je suis en train de configurer Zoho mail smtp et je ne comprends pas ce que je fais mal. En mode de développement, tout est ok, mais dans la production j'ai l'erreur ci-dessous lors de l'envoi email:Rails Zoho Net :: SMTPAuthenticationError: 530
Net::SMTPAuthenticationError: 530 5.5.1 Authentication Required.
Mes réglages env de production:
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { host: 'not-real.com' }
config.action_mailer.smtp_settings = {
port: 465,
ssl: true,
tls: true,
authentication: :login,
address: 'smtp.zoho.eu',
domain: 'not-real.com',
enable_starttls_auto: true,
password: ENV['ZOHO_PASSWORD'],
user_name: ENV['ZOHO_USER_NAME']
}
d'abord à tout ce que je pensais que le problème dans le mauvais mot de passe ou user_name mais non. Ensuite j'ai vérifié le domaine dans le panneau de contrôle de Zoho ---> Domaines mais tout est ok. Dans Zoho SMTP Server Configuration dit:
Outgoing Server Name: smtp.zoho.eu
Port: 465
Security Type: SSL
Require Authentication: Yes.
Mais pourriez-vous s'il vous plaît dites-moi ce que cela signifie? -> Exiger l'authentification: Oui.
Dois-je changer quelque chose dans les paramètres Zoho?
Résolu! En fait, le problème était dans la définition des variables env à travers le fichier .bashrc en production. Donc quand je vérifiais les variables d'env dans la console rails par Rails.application.config.action_mailer.smtp_settings toutes les options étaient présentes et correctes mais l'email ne fonctionnait pas. Je l'ai résolu en utilisant dotenv-rails dans ma production au lieu du fichier .bashrc. Voici le lien que j'utilise pour installer .env en production https://stackoverflow.com/questions/17150736/environment-variables-on-production –