Hébergement web - Bonnes pratiques d’envoi d’e-mail
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
- Disposer d’une offre d’hébergement web OVHcloud.
- Pour l’envoi SMTP authentifié uniquement : disposer d’une adresse e-mail attachée à votre nom de domaine (offre MX Plan, Email Pro ou Exchange). Si vous n’en avez pas encore, consultez le guide « Créer une adresse e-mail avec son offre MX Plan ».
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.
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.
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.
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 ».
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.
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 :
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 :
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) :
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 ».
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 :
Voici un exemple complet d’envoi SMTP authentifié :
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).
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 :
- Dans votre administration WordPress, accédez à Extensions > Ajouter une extension.
- Recherchez
WP Mail SMTPet cliquez sur Installer maintenant, puis sur Activer.
Configuration :
- Accédez à WP Mail SMTP > Paramètres dans le menu d’administration.
- Dans la section Expéditeur, renseignez les champs suivants :
- Dans la section Mailer, sélectionnez Autre SMTP.
- Renseignez les paramètres SMTP :
- Cliquez sur Enregistrer les paramètres.
- Dans l’onglet Outils, utilisez Test d’envoi d’e-mail pour vérifier la configuration.
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 :
- Dans votre administration WordPress, accédez à Extensions > Ajouter une extension.
- Recherchez
FluentSMTPet cliquez sur Installer maintenant, puis sur Activer.
Configuration :
- Accédez à FluentSMTP > Paramètres.
- Cliquez sur Ajouter une connexion et sélectionnez Autre SMTP.
- Renseignez les mêmes paramètres que pour WP Mail SMTP :
- 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.
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.