Retour à la base de connaissances
Koppelenlaravelsmtp

Configurer les variables MAIL de Laravel

Laravel lit ses réglages de messagerie dans le fichier d'environnement de votre application. Avec une poignée de variables MAIL, vous faites partir tout le courrier de votre application — inscriptions, réinitialisations de mot de passe, notifications issues d'une file d'attente — via 2Mail, sans changer une seule ligne de code.

Ce qu'il vous faut

  • le nom du serveur indiqué dans votre compte 2mail
  • un identifiant SMTP avec mot de passe, créé dans le tableau de bord pour cette application ; utilisez un identifiant distinct pour vos environnements de test et de production
  • une adresse d'expéditeur sur un domaine enregistré comme domaine d'envoi dans votre compte

Étape 1 : renseigner les variables

Ouvrez le fichier d'environnement de votre application et mettez le mailer sur SMTP. Une fois rempli, cela donne :

MAIL_MAILER=smtp, MAIL_HOST=le nom du serveur de votre compte 2mail, MAIL_PORT=587, MAIL_USERNAME=votre identifiant SMTP, MAIL_PASSWORD=votre mot de passe, MAIL_ENCRYPTION=tls, MAIL_FROM_ADDRESS=une adresse sur votre domaine d'envoi, MAIL_FROM_NAME=le nom de votre entreprise.

Placez les valeurs contenant des espaces, comme le nom d'expéditeur, entre guillemets. Gardez le chiffrement sur tls : c'est le réglage STARTTLS correspondant au port 587.

Étape 2 : rafraîchir le cache de configuration

Si votre environnement de production tourne avec une configuration mise en cache, Laravel ne relit pas le fichier d'environnement. Rafraîchissez le cache de configuration après chaque modification ; sinon vous testez avec les anciennes valeurs et vous cherchez une erreur qui n'existe pas.

Étape 3 : tester

Envoyez un message simple, par exemple depuis la console interactive de Laravel ou via une notification existante, à une adresse hors de votre domaine. Consultez ensuite le journal de remise dans le tableau de bord de 2Mail : vous y voyez si le message nous est parvenu et ce que le serveur destinataire a répondu.

Étape 4 : la file d'attente

Si vous envoyez via une file d'attente, l'envoi réel a lieu dans le worker, pas dans la requête web. Redémarrez les workers après une modification des variables ; sinon ils continuent avec les anciens réglages. En cas d'erreur dans le worker, le message apparaît dans la table des tâches échouées, avec la réponse de notre relais.

Erreurs fréquentes

  • Connexion impossible — le nom du serveur contient une faute de frappe, ou l'hébergement bloque le port 587. Demandez à votre hébergeur d'ouvrir ce port.
  • Expéditeur refusé — l'adresse d'expéditeur d'un mailable individuel écrase l'adresse globale et utilise un autre domaine.
  • Fonctionne en local, pas en production — le cache de configuration n'a pas été rafraîchi, ou la production utilise un autre fichier d'environnement avec d'anciennes valeurs.

Plus d'informations sur cette intégration sur SMTP pour Laravel. Si vous préférez envoyer sans SMTP et recevoir un statut par message, regardez du côté de l'API e-mail.

Ça ne marche pas ?

Envoyez-nous via contact le message de votre fichier de log ou de la table des tâches échouées. La réponse de notre relais y figure mot pour mot.

#laravel mail env#configurer smtp laravel#laravel mail_host#relais smtp laravel#envoi e-mail laravel
Vous restez bloqué ?

Cela se passe autrement que décrit ci-dessus, ou vous n'y arrivez pas ? Contactez-nous avec votre nom de domaine ou votre numéro de client sous la main, et nous regardons avec vous.

Contacter le support
Appelez-nous
Envoyer un e-mail