2mail — relais SMTP depuis une infrastructure belge

SMTP pour TYPO3 — les e-mails de votre site qui arrivent

TYPO3 envoie ses e-mails via le transport défini dans les réglages d'installation. Par défaut, c'est la fonction mail locale du serveur — sans authentification ni réputation, si bien que les envois de formulaires et les e-mails de réinitialisation finissent régulièrement en spam chez Gmail et Outlook.

TYPO3 peut régler ce transport directement sur SMTP, sans extension supplémentaire. Vous indiquez le serveur, le port, le chiffrement et l'identifiant dans les réglages MAIL de l'installation, et tout ce que TYPO3 envoie — y compris les e-mails de formulaires et de workflow des extensions — passe désormais par votre relais.

Pourquoi cela coince sans relais

TYPO3 sert à de grands sites multilingues d'entreprises et d'administrations, souvent avec des formulaires qui déclenchent une vraie démarche : une inscription, une demande de devis, une candidature. Si la confirmation n'arrive pas, le demandeur appelle — ou remplit le formulaire une seconde fois et vous vous retrouvez avec des dossiers en double. Le message part bien, mais rien ne prouve qu'il vient de votre domaine.

Configurer le SMTP dans TYPO3

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 TYPO3

La configuration de messagerie de TYPO3 se trouve dans les réglages d'installation, sous les clés MAIL. Réglez le transport sur SMTP, indiquez le serveur avec le port, choisissez le chiffrement et renseignez le nom d'utilisateur et le mot de passe. Placez aussi l'adresse et le nom d'expéditeur par défaut sur votre propre domaine. L'outil d'installation propose un e-mail de test — envoyez-le vers une adresse externe chez un grand fournisseur.

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

Depuis votre plateforme, 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 TYPO3 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.

Configuration SMTP pour TYPO3 dans le code

Des exemples fonctionnels pour le port 587 avec STARTTLS, prêts à être repris. Remplacez l'adresse d'expéditeur par une adresse de votre propre domaine et vérifiez le nom du serveur et l'identifiant dans votre compte 2mail. Le mot de passe a sa place dans une variable d'environnement — jamais dans le code et jamais dans le gestionnaire de versions.

Les réglages MAIL dans additional.php

Placez les données SMTP dans le fichier de configuration complémentaire plutôt que dans settings.php : ce dernier est réécrit par l'outil d'installation, et un appel à getenv() n'y survit pas. L'identifiant et le mot de passe proviennent ainsi des variables d'environnement du serveur et restent hors du gestionnaire de versions. Attention à transport_smtp_encrypt : dans les versions actuelles de TYPO3, c'est un booléen qui doit valoir false sur le port 587 — STARTTLS s'enclenche alors automatiquement. Seules les très anciennes versions (jusqu'à la 9 incluse) attendaient ici la chaîne tls.

<?php
// config/system/additional.php
// (older installations: typo3conf/AdditionalConfiguration.php)

$GLOBALS['TYPO3_CONF_VARS']['MAIL'] = array_replace(
    $GLOBALS['TYPO3_CONF_VARS']['MAIL'],
    [
        'transport' => 'smtp',
        'transport_smtp_server' => 'relay.2mail.eu:587',   // host AND port, in one value
        'transport_smtp_encrypt' => false,                 // false on 587 = STARTTLS; true = TLS from the first byte (465)
        'transport_smtp_username' => getenv('SMTP_USERNAME'),
        'transport_smtp_password' => getenv('SMTP_PASSWORD'),
        'defaultMailFromAddress' => 'noreply@example.com',
        'defaultMailFromName' => 'Example',
    ]
);

E-mail de test : outil d'installation ou MailMessage

Le contrôle le plus rapide se trouve dans le backend : Admin Tools → Environment → Test Mail Setup envoie un message avec exactement les réglages réellement en vigueur. Si vous voulez tester depuis votre propre extension, la classe MailMessage de TYPO3 suffit — la même voie que celle qu'empruntent les formulaires et les e-mails de workflow.

use TYPO3\CMS\Core\Mail\MailMessage;
use TYPO3\CMS\Core\Utility\GeneralUtility;

// No from(): TYPO3 falls back to defaultMailFromAddress / defaultMailFromName.
$mail = GeneralUtility::makeInstance(MailMessage::class);
$mail
    ->to('you@example.org')
    ->subject('SMTP test')
    ->text('Sent through the 2mail SMTP relay.')
    ->send();

Les e-mails que TYPO3 envoie

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

Envois et confirmations de formulaires
Réinitialisation de mot de passe pour les utilisateurs backend et frontend
Notifications de workflow pour le contenu en attente de validation
Alertes système et de sécurité vers les administrateurs
Rapports planifiés et newsletters issus d'extensions

Pièges avec TYPO3

Réglages dans la mauvaise couche

TYPO3 lit les réglages d'installation depuis plusieurs couches : le fichier de configuration système et un fichier complémentaire qui l'écrase. Si vous placez les données SMTP dans une couche alors que l'autre contient encore l'ancien transport, c'est cette dernière qui l'emporte. Vérifiez dans l'outil d'installation quelle valeur est réellement en vigueur.

Serveur et port vont ensemble

TYPO3 attend le serveur et le port ensemble dans le réglage du transport. Si vous oubliez le port, TYPO3 retombe sur une valeur par défaut qui ne correspond pas à votre chiffrement — et la connexion reste bloquée ou est aussitôt coupée. Le port 587 avec STARTTLS est le choix sûr.

Staging avec les mêmes données

Si la configuration est déployée via le gestionnaire de versions, un environnement de test ou de staging envoie avec le même identifiant — vers de vraies adresses issues d'une base copiée. Utilisez un identifiant distinct par environnement, afin de pouvoir couper l'environnement de test séparément.

Messages d'erreur fréquents avec TYPO3

Les messages qui s'affichent lorsque l'hôte, le port, le chiffrement ou l'identifiant sont incorrects — cités tels quels, pour que vous les reconnaissiez dans votre journal, avec la cause et la solution en regard.

Message Cause Solution
Connection could not be established with host "relay.2mail.eu:25": stream_socket_client(): Unable to connect to relay.2mail.eu:25 (Connection timed out) transport_smtp_server ne contient que le nom du serveur, sans port. TYPO3 retombe alors sur le port 25, que la plupart des hébergeurs et des plateformes cloud bloquent pour le trafic sortant. Écrivez le serveur et le port ensemble dans une seule valeur : relay.2mail.eu:587.
Connection could not be established with host "ssl://relay.2mail.eu:587": stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages: error:…:SSL routines::wrong version number transport_smtp_encrypt est réglé sur true. TYPO3 attend alors du TLS dès le premier octet, alors que le port 587 démarre en clair et ne passe en TLS qu'ensuite, via STARTTLS. Réglez transport_smtp_encrypt sur false et laissez le port sur 587. La connexion reste chiffrée.
Failed to authenticate on SMTP server with username "…" using the following authenticators: "LOGIN", "PLAIN". … Expected response code "235" but got code "535" Le relais refuse l'identifiant. Soit le nom d'utilisateur ou le mot de passe est erroné, soit la variable d'environnement est vide dans le contexte où PHP s'exécute — le serveur web ne voit pas automatiquement les mêmes variables que votre shell. Vérifiez que getenv('SMTP_PASSWORD') renvoie bien une valeur au sein du serveur web, et utilisez l'identifiant SMTP de votre compte 2mail — pas le mot de passe d'une boîte aux lettres.
Expected response code "250/251/252" but got code "554", with message "554 5.7.1 <noreply@example.com>: Sender address rejected" L'identifiant est correct, mais l'adresse d'expéditeur se trouve sur un domaine qui n'est pas lié à votre compte 2mail. Souvent, defaultMailFromAddress est vide, ou un formulaire définit son propre expéditeur. Placez defaultMailFromAddress sur une adresse d'un domaine que vous avez ajouté dans 2mail, et vérifiez pour chaque formulaire quelle adresse d'expéditeur il utilise.
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 TYPO3

TYPO3 envoie par défaut via la fonction mail locale du serveur, sans authentification ni réputation. Le message part bien, mais il est refusé en route ou marqué comme spam parce que rien ne prouve qu'il vient de votre domaine. Un relais SMTP avec des enregistrements SPF, DKIM et DMARC corrects règle le problème.
Non. TYPO3 prend en charge SMTP comme transport dans les réglages d'installation. Vous réglez le transport sur SMTP et indiquez le serveur avec le port, le chiffrement, le nom d'utilisateur et le mot de passe. Les extensions qui envoient des e-mails utilisent le même transport.
Vérifiez que la modification n'est pas écrasée par un fichier de configuration complémentaire, et que le cache de TYPO3 a été vidé. L'outil d'installation vous montre quelle valeur est réellement en vigueur — c'est le moyen le plus rapide de savoir ce que TYPO3 lit vraiment.
Dans votre compte 2mail, par application. Ils sont liés au compte, nous ne les publions donc pas sur le site web. Créez de préférence un identifiant propre par environnement pour TYPO3, afin de pouvoir révoquer le staging séparément.
Appelez-nous
Envoyer un e-mail