2mail — relais SMTP depuis une infrastructure belge

SMTP pour Laravel — le courrier de votre application qui arrive

Laravel intègre une couche mail complète, avec files d'attente, modèles et notifications. Ce qu'il ne fournit pas, c'est la délivrabilité : elle dépend du serveur par lequel vous envoyez, et la configuration par défaut d'un serveur neuf fait rarement un bon expéditeur.

Laravel lit ses paramètres mail dans la configuration d'environnement. Vous y modifiez les données SMTP et le reste de votre application demeure inchangé — aucune adaptation des mailables, notifications ou files d'attente n'est nécessaire.

Pourquoi cela coince sans relais

Une application en développement envoie vers une adresse de test et tout semble correct. À la mise en production, le public change : de vraies adresses chez de vrais fournisseurs, qui contrôlent bel et bien l'authentification et la réputation. C'est le moment où les e-mails de réinitialisation cessent soudain d'arriver — chez une partie des utilisateurs seulement, ce qui rend le problème difficile à repérer.

Configurer le SMTP dans Laravel

1

Récupérer les données

Connectez-vous à votre compte 2mail et récupérez-y votre serveur SMTP, votre nom d'utilisateur et votre mot de passe.

2

Compléter dans Laravel

Les paramètres mail se trouvent dans le fichier d'environnement de votre application, pas dans le code. Vous réglez le mailer sur SMTP et renseignez les cinq données ci-dessous. N'oubliez pas l'adresse et le nom de l'expéditeur : ce sont des réglages distincts, à côté des données de connexion.

3

Authentifier le domaine

Veillez à ce que SPF, DKIM et DMARC soient correctement configurés pour votre domaine, afin que les destinataires puissent vérifier que le courrier vient bien de vous.

4

Tester

Envoyez un message de test vers une adresse chez un grand fournisseur et vérifiez qu'il arrive dans la boîte de réception et non dans les indésirables.

Les champs que Laravel demande

Chaque plateforme les nomme un peu différemment, mais il s'agit toujours des mêmes cinq champs. Les valeurs concrètes sont liées à votre compte et se trouvent dans votre compte 2mail — relevez-les à cet endroit, afin d'être certain d'utiliser les bonnes.

Champ Ce que vous indiquez
Serveur SMTP (host)Le nom de serveur figurant dans votre compte 2mail.
PortLe port correspondant au chiffrement que vous avez choisi ; votre compte indique lequel.
ChiffrementTLS. N'envoyez jamais sans chiffrement — vos identifiants circuleraient sinon en clair sur le réseau.
Nom d'utilisateurL'identifiant SMTP de votre compte 2mail.
Mot de passeLe mot de passe correspondant. N'utilisez jamais le mot de passe de la boîte aux lettres d'un collaborateur.

Les e-mails que Laravel envoie

Dès que le relais est configuré, tous ces messages passent par 2mail — vous ne devez pas les configurer un par un.

Réinitialisation de mot de passe et vérification d'adresse
Notifications et e-mails d'événements de l'application
Factures et messages liés aux abonnements
Rapports issus de tâches planifiées
Messages d'erreur vers les administrateurs

Pièges avec Laravel

La file d'attente doit tourner

Si vous placez le courrier en file sans traitement actif, rien ne part et vous ne voyez aucune erreur. En cas de problème de livraison, ce devrait être la première vérification, pas la dernière.

Le cache de configuration après une modification

Si votre application tourne avec une configuration mise en cache, les paramètres mail modifiés restent sans effet tant que ce cache n'est pas rafraîchi. Un réglage qui « ne fonctionne pas » n'est souvent tout simplement pas encore relu.

Des environnements de test qui envoient vraiment

Un environnement de staging avec une copie de la base de production peut envoyer à de vrais clients sans qu'on s'en aperçoive. Limitez-y explicitement les destinataires, ou utilisez un identifiant distinct.

SPF, DKIM & DMARC expliqués À propos de la délivrabilité

Une autre plateforme ?

SMTP est un protocole standard : tout système qui parle SMTP — un CRM, un ERP, une application maison ou un serveur — peut envoyer via 2mail avec les mêmes cinq champs.

Questions fréquentes sur le SMTP pour Laravel

Laravel fournit la couche mail, pas la délivrabilité : celle-ci dépend du serveur par lequel vous envoyez. La configuration par défaut d'un serveur neuf fait rarement un bon expéditeur, faute d'authentification et de réputation établie.
Dans le fichier d'environnement de votre application, pas dans le code. Vous réglez le mailer sur SMTP et renseignez l'hôte, le port, le nom d'utilisateur, le mot de passe et le chiffrement. N'oubliez pas l'adresse et le nom de l'expéditeur — ce sont des réglages distincts, à côté.
Si votre application tourne avec une configuration mise en cache, les paramètres mail modifiés restent sans effet tant que ce cache n'est pas rafraîchi. Un réglage qui « ne fonctionne pas » n'est souvent tout simplement pas encore relu.
Vérifiez que la file d'attente est bien traitée. Si vous placez le courrier en file sans traitement actif, rien ne part et aucun message d'erreur n'apparaît. Ce devrait être la première vérification, pas la dernière.
Un environnement de staging avec une copie de la base de production peut envoyer à de vraies adresses sans qu'on s'en aperçoive. Limitez-y explicitement les destinataires, ou utilisez un identifiant distinct afin de suivre ce trafic séparément.
Trust Guard Security Scanned
Appelez-nous
Envoyer un e-mail