For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/web-cloud/web-hosting/email-sending-best-practices.md.

Hébergement web - Bonnes pratiques d’envoi d’e-mail

Voir en Markdown

Choisissez entre la fonction PHP mail() et l’envoi SMTP authentifié depuis votre hébergement web, et configurez le SMTP avec votre adresse e-mail OVHcloud

Objectif

Votre hébergement web propose deux façons d’envoyer des e-mails depuis votre site : la fonction PHP mail() native, qui utilise les serveurs d’envoi de votre hébergement, et l’envoi SMTP authentifié via une adresse e-mail attachée à votre nom de domaine. Les deux sont légitimes. mail() est la méthode par défaut : elle ne demande aucune configuration, elle est soumise à un quota par hébergement web et elle se gère depuis votre espace client OVHcloud. Le SMTP authentifié est l’alternative lorsque vous devez maîtriser l’identité de l’expéditeur : l’adresse From: est liée à un compte authentifié et l’e-mail porte la signature de votre nom de domaine. Ses quotas s’appliquent par adresse e-mail et par adresse IP source, partagée entre les sites d’un hébergement mutualisé.

Découvrez comment choisir entre les deux méthodes et comment configurer un envoi SMTP authentifié depuis un hébergement mutualisé, que vous gériez un site WordPress, un autre CMS ou une application PHP.

Prérequis


Accès à l’espace client OVHcloud

  • Lien direct :
  • Pour accéder à vos services : Web Cloud > Hébergements > Sélectionnez votre hébergement web

En pratique

1. mail() ou SMTP authentifié : laquelle choisir ?

Les deux méthodes envoient des e-mails depuis votre site. Elles diffèrent par :

  • le serveur d’envoi de l’e-mail,
  • les limitations d’envoi,
  • les méthodes de suivi des e-mails.
PHP mail()SMTP authentifié
FonctionnementLe script confie l’e-mail aux serveurs d’envoi de votre hébergement. Aucune configuration n’est nécessaire.Le script se connecte au serveur de messagerie OVHcloud avec l’identifiant et le mot de passe d’une adresse e-mail attachée à votre domaine.
Quota d’envoiPar hébergement et par heure, selon votre offre. Consultez les « Spécificités techniques liées aux hébergements web ».Par adresse e-mail et par heure (environ 200 e-mails pour une adresse MX Plan), plus 300 e-mails par heure et par adresse IP source sur le serveur SMTP OVHcloud. Sur un hébergement mutualisé, l’adresse IP sortante est partagée avec les autres sites du cluster.
SuiviDepuis l’onglet Scripts e-mail de votre hébergement dans l’espace client OVHcloud : statistiques, rapports d’erreurs, blocage et purge. Consultez le guide « Suivre et gérer les e-mails automatisés de son hébergement web ».Invisible dans l’espace client OVHcloud. Suivez les envois depuis les logs de votre application.
Identité de l’expéditeurL’adresse From: est déclarée par le script. Son nom de domaine doit être attaché à votre hébergement (multisite), sinon l’e-mail ne peut pas être authentifié.L’adresse From: doit correspondre au compte authentifié. L’e-mail est signé DKIM si DKIM est activé pour votre domaine.
Usage typeFormulaires de contact, notifications, tout script dont le volume tient dans le quota de l’hébergement.CMS avec plusieurs plugins qui envoient des e-mails, applications qui exigent un expéditeur fixe et signé, ou adresse From: partagée avec votre boîte e-mail.

Quelle que soit la méthode retenue :

  • Les serveurs destinataires (Gmail, Outlook, etc.) vérifient que le nom de domaine du champ From: autorise le serveur d’envoi. Maintenez vos enregistrements SPF, DKIM et DMARC corrects dans votre zone DNS.
  • Un envoi abusif ou du spam depuis votre hébergement ou depuis votre adresse e-mail entraîne un blocage automatique. Si vos e-mails ne partent plus, consultez le guide « Suivre et gérer les e-mails automatisés de son hébergement web ».
  • La taille totale d’un e-mail ne peut pas dépasser 10 Mo, en-têtes et encodage compris.

Formulaires ouverts : un vecteur d’abus pour les deux méthodes

Un formulaire de contact accessible publiquement, sans mécanisme de protection, est une cible privilégiée pour les robots. Les robots l’exploitent pour envoyer des milliers d’e-mails en quelques minutes via votre hébergement : l’IP partagée est bloquée, et tous les clients du même serveur en pâtissent.

Mettez en place les protections suivantes sur tout formulaire qui déclenche un envoi d’e-mail :

  • Captcha : intégrez un système de vérification (Google reCAPTCHA v3, hCaptcha, ou un calcul arithmétique simple) pour bloquer les soumissions automatisées.
  • Limitation du débit : limitez le nombre d’envois par adresse IP côté serveur pour éviter les abus en rafale.
  • Validation stricte des entrées : nettoyez tous les champs du formulaire avant de les utiliser dans un e-mail — ne faites jamais confiance aux données saisies par l’utilisateur.
Warning

L’absence de captcha sur un formulaire d’envoi ouvert est l’une des causes les plus fréquentes de blocage des hébergements mutualisés pour envoi de spam. Cette protection est indispensable quelle que soit la méthode d’envoi.

2. Configurer l’envoi SMTP authentifié avec un compte e-mail OVHcloud

Principe

Envoyez vos e-mails via une connexion SMTP authentifiée vers le serveur de messagerie OVHcloud, à l’aide d’un compte e-mail attaché à votre domaine (par exemple contact@mydomain.ovh).

Cette approche a trois avantages :

  • Authentification garantie : le serveur OVHcloud vérifie votre identité avant d’accepter l’e-mail.
  • SPF et DKIM : l’e-mail est émis par un serveur autorisé pour votre domaine et signé DKIM si DKIM est activé pour votre domaine.
  • Un seul compte identifié : chaque envoi est lié à une seule adresse e-mail, dont vous pouvez changer le mot de passe à tout moment pour stopper un script ou un plugin abusif.

Envoi avec mail() : le domaine doit être attaché à votre hébergement

Pour envoyer des e-mails depuis votre hébergement web avec la fonction PHP mail(), le nom de domaine utilisé dans le champ From: doit être attaché à votre hébergement.

Ce domaine n’a pas besoin d’être géré dans votre compte OVHcloud : vous pouvez utiliser un domaine enregistré chez un autre bureau d’enregistrement, du moment qu’il est attaché à votre hébergement web : c’est cet attachement qui vous autorise à envoyer des e-mails au nom de ce domaine.

Tip

Si votre domaine n’est pas encore attaché à votre hébergement, ajoutez-le comme multisite depuis votre espace client OVHcloud, puis vérifiez la configuration DNS associée. Consultez le guide « Partager son hébergement entre plusieurs sites ».

Warning

Un envoi émis pour un domaine qui n’est pas attaché à votre hébergement ne peut pas être authentifié : il est traité comme un envoi non authentifié : il sera rejeté et classé en erreur.

Pourquoi le champ From: doit appartenir à votre domaine

Le champ From: de votre e-mail doit obligatoirement contenir une adresse appartenant à votre domaine (par exemple contact@mydomain.ovh), et cette adresse doit correspondre au compte SMTP utilisé pour l’authentification.

Si le From: ne correspond pas au domaine autorisé dans l’enregistrement SPF, ou si la signature DKIM ne correspond pas, les serveurs de messagerie destinataires (Gmail, Outlook, etc.) peuvent rejeter l’e-mail ou le classer en spam.

Tip

Pour maximiser la délivrabilité, vérifiez que les enregistrements SPF, DKIM et DMARC sont bien configurés dans votre zone DNS. Gmail et Yahoo Mail les exigent désormais pour les expéditeurs à fort volume. Consultez nos guides :

Formulaires de contact : champ From: fixe et Reply-To: utilisateur

Une erreur fréquente : placer l’adresse e-mail saisie par l’utilisateur dans le champ From:. Par exemple, un visiteur saisit utilisateur@gmail.com et le script utilise cette adresse comme expéditeur.

Ce comportement est incorrect pour deux raisons :

  • L’enregistrement SPF de votre domaine n’autorise pas les serveurs Gmail (ou tout autre fournisseur tiers) à envoyer en votre nom → échec du contrôle SPF.
  • Vous envoyez au nom d’une adresse qui ne vous appartient pas → risque élevé de classification en spam ou de rejet.

Le bon schéma pour un formulaire de contact :

Champ e-mailValeurRôle
From:contact@mydomain.ovh (adresse fixe du site)Expéditeur authentifié — ne change jamais
Reply-To:Adresse saisie par l’utilisateur dans le formulairePermet de répondre directement à l’utilisateur
Subject:Objet du message, préfixé (par exemple [Contact])Identifie facilement les messages du formulaire

Ainsi, quand vous répondez à l’e-mail reçu, votre client de messagerie envoie la réponse à l’adresse de l’utilisateur via le champ Reply-To:, sans compromettre l’authentification SPF/DKIM.

Voici comment adapter l’exemple PHPMailer pour un formulaire de contact :

// Données fournies par l'utilisateur (à valider et nettoyer avant utilisation)
$userEmail = filter_var($_POST['email'], FILTER_VALIDATE_EMAIL);
$userName  = htmlspecialchars(strip_tags($_POST['name']));
$message   = htmlspecialchars(strip_tags($_POST['message']));

if (!$userEmail) {
    die('Invalid email address.');
}

// From : toujours fixe — l'adresse de votre site, jamais celle de l'utilisateur
$mail->setFrom('contact@mydomain.ovh', 'My Website');

// Reply-To : l'adresse de l'utilisateur, pour pouvoir lui répondre directement
$mail->addReplyTo($userEmail, $userName);

// Destinataire : vous-même (vous recevez le message du formulaire)
$mail->addAddress('contact@mydomain.ovh', 'My Website');

$mail->Subject = '[Contact] ' . $userName;
$mail->Body    = "Name: $userName\nEmail: $userEmail\n\nMessage:\n$message";
Tip

Ne passez jamais directement les données d’un formulaire dans PHPMailer sans validation préalable. Utilisez filter_var() pour l’adresse e-mail et htmlspecialchars() + strip_tags() pour les champs texte afin d’éviter les injections d’en-têtes e-mail.

Paramètres SMTP OVHcloud

Utilisez les paramètres suivants pour votre compte e-mail MX Plan (inclus avec l’hébergement web) :

ParamètreValeur
Serveur SMTPsmtp.mail.ovh.net
Port (SSL/TLS)465 (recommandé)
Port (STARTTLS)587
ChiffrementSSL/TLS (port 465) ou STARTTLS (port 587)
AuthentificationObligatoire
Nom d’utilisateurAdresse e-mail complète (par exemple contact@mydomain.ovh)
Mot de passeMot de passe du compte e-mail OVHcloud
Tip

Pour les offres Email Pro ou Exchange, le serveur SMTP est différent. Consultez la documentation de chaque offre pour les paramètres exacts.

Où trouver vos identifiants SMTP

Le nom d’utilisateur SMTP est votre adresse e-mail complète (par exemple contact@mydomain.ovh).

Le mot de passe est celui défini lors de la création de l’adresse, ou modifié depuis l’espace client OVHcloud. Si vous l’avez oublié ou souhaitez le réinitialiser, consultez le guide « Modifier le mot de passe d’une adresse e-mail ».

Warning

L’offre MX Plan incluse avec l’hébergement web est soumise à des quotas d’envoi (environ 200 e-mails par heure par compte), indépendants du quota de la fonction mail() de votre hébergement. Le serveur SMTP OVHcloud accepte également au maximum 300 e-mails par heure et par adresse IP source. Sur un hébergement mutualisé, cette adresse IP est partagée avec les autres sites hébergés sur le même cluster : la limite est donc atteinte plus vite que depuis votre ordinateur. Les solutions de messagerie ne sont pas conçues pour l’envoi en masse : pour des volumes importants — newsletters ou e-mails transactionnels — utilisez un service tiers dédié à cet usage.

Exemple de code PHP avec PHPMailer

PHPMailer est la bibliothèque PHP de référence pour l’envoi d’e-mails via SMTP. Installez-la via Composer :

composer require phpmailer/phpmailer

Voici un exemple complet d’envoi SMTP authentifié :

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {
    // Paramètres du serveur SMTP OVHcloud
    $mail->isSMTP();
    $mail->Host       = 'smtp.mail.ovh.net';
    $mail->SMTPAuth   = true;
    $mail->Username   = 'contact@mydomain.ovh'; // Votre adresse e-mail OVHcloud
    $mail->Password   = 'your_password';         // Mot de passe du compte e-mail
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // SSL/TLS
    $mail->Port       = 465;

    // Expéditeur : doit appartenir à votre domaine
    $mail->setFrom('contact@mydomain.ovh', 'My Website');
    $mail->addReplyTo('contact@mydomain.ovh', 'My Website');

    // Destinataire
    $mail->addAddress('mary.johnson@example.com', 'Recipient Name');

    // Contenu
    $mail->isHTML(true);
    $mail->Subject = 'Your email subject';
    $mail->Body    = 'Email body in <b>HTML</b>';
    $mail->AltBody = 'Email body in plain text (fallback)';

    $mail->send();
    echo 'Email sent successfully.';
} catch (Exception $e) {
    echo "Error while sending: {$mail->ErrorInfo}";
}
Warning

Ne stockez jamais le mot de passe de votre compte e-mail en clair dans un fichier PHP versionné. Utilisez un fichier de configuration exclu de votre dépôt Git (.gitignore).

Info

Avec cette configuration, chaque e-mail envoyé depuis votre site est :

  • authentifié auprès du serveur OVHcloud,
  • autorisé par l’enregistrement SPF de votre domaine et signé DKIM si celui-ci est activé,
  • émis par un seul compte identifié, dont vous maîtrisez le mot de passe.

3. WordPress et autres CMS : utiliser un plugin SMTP

3.1 Comment WordPress envoie les e-mails par défaut

La fonction wp_mail() de WordPress utilise en arrière-plan la fonction PHP mail(), avec une adresse From: définie par WordPress ou par chaque plugin. Les envois relèvent donc du quota de votre hébergement et se suivent depuis l’espace client OVHcloud.

Pour un expéditeur fixe et authentifié sur tous les e-mails de votre site, installez un plugin SMTP qui remplace wp_mail() par une connexion SMTP authentifiée vers votre serveur de messagerie OVHcloud.

3.2 Configurer WP Mail SMTP

WP Mail SMTP est le plugin le plus utilisé pour cette configuration.

Installation :

  1. Dans votre administration WordPress, accédez à Extensions > Ajouter une extension.
  2. Recherchez WP Mail SMTP et cliquez sur Installer maintenant, puis sur Activer.

Configuration :

  1. Accédez à WP Mail SMTP > Paramètres dans le menu d’administration.
  2. Dans la section Expéditeur, renseignez les champs suivants :
ChampValeur
E-mail de l’expéditeurcontact@mydomain.ovh (adresse appartenant à votre domaine)
Nom de l’expéditeurNom affiché pour votre site (par exemple Mon Site Web)
  1. Dans la section Mailer, sélectionnez Autre SMTP.
  2. Renseignez les paramètres SMTP :
ChampValeur
Hôte SMTPsmtp.mail.ovh.net
ChiffrementSSL/TLS
Port SMTP465
AuthentificationActivée
Nom d’utilisateur SMTPcontact@mydomain.ovh
Mot de passe SMTPMot de passe de votre compte e-mail OVHcloud
  1. Cliquez sur Enregistrer les paramètres.
  2. Dans l’onglet Outils, utilisez Test d’envoi d’e-mail pour vérifier la configuration.
Tip

Activez l’option Forcer l’e-mail de l’expéditeur pour que tous les e-mails sortants utilisent l’adresse configurée, même si un plugin tiers tente d’en utiliser une autre.

3.3 Alternative : FluentSMTP

FluentSMTP est une alternative légère et gratuite. Le quota d’envoi de votre adresse e-mail s’applique de la même façon.

Installation :

  1. Dans votre administration WordPress, accédez à Extensions > Ajouter une extension.
  2. Recherchez FluentSMTP et cliquez sur Installer maintenant, puis sur Activer.

Configuration :

  1. Accédez à FluentSMTP > Paramètres.
  2. Cliquez sur Ajouter une connexion et sélectionnez Autre SMTP.
  3. Renseignez les mêmes paramètres que pour WP Mail SMTP :
ChampValeur
Hôtesmtp.mail.ovh.net
Port465
ChiffrementSSL/TLS
AuthentificationOui
Nom d’utilisateurcontact@mydomain.ovh
Mot de passeMot de passe de votre compte e-mail OVHcloud
E-mail expéditeurcontact@mydomain.ovh
  1. Cliquez sur Enregistrer la connexion puis envoyez un e-mail de test.

3.4 Autres CMS (Drupal, Joomla, PrestaShop)

Le principe est identique pour tout CMS ou framework : remplacez la fonction d’envoi native par un module ou une configuration SMTP authentifiée.

CMSModule recommandé
DrupalSMTP Authentication Support
JoomlaConfiguration native : Système > Configuration globale > onglet Serveur > section Paramètres mail
PrestaShopParamètres avancés > E-mail — choisir Utiliser mes propres paramètres SMTP

Dans tous les cas, les paramètres SMTP sont identiques : serveur smtp.mail.ovh.net, port 465 (SSL/TLS) ou 587 (STARTTLS), avec authentification par l’adresse e-mail complète et son mot de passe.

Aller plus loin

Suivre et gérer les e-mails automatisés de son hébergement web

Spécificités techniques liées aux hébergements web

Améliorer la sécurité des e-mails via un enregistrement SPF

Améliorer la sécurité des e-mails via un enregistrement DKIM

Améliorer la sécurité des e-mails via un enregistrement DMARC

Pour des prestations spécialisées (référencement, développement, etc.), contactez les partenaires OVHcloud.

Si vous souhaitez bénéficier d’une assistance à l’usage et à la configuration de vos solutions OVHcloud, nous vous proposons de consulter nos différentes offres de support.

Échangez avec notre communauté d’utilisateurs.

Cette page vous a-t-elle aidé ?