Configurer Ubuntu pour envoyer des mails PHP à la sauce sendmail sans sendmail !

13.03.2009  • Samuel Breton

Sur windows la fonction mail() de php est configurée pour fonctionner via SMTP que l’on peut configurer dans le php.ini

Sur les systèmes Linux, ça n’est pas le cas. Php est configuré pour transmettre les mails via un vrai service de transport de mail du style sendmail ou postfix.
Le problème de ces programmes (demon), c’est qu’ils ne sont pas évidents à installer et configurer correctement pour tout les développeurs qui ne sont pas admin système.

Heureusement ESMTP est là pour nous sauver, nous autres simples développeurs.

Esmtp is a send-only sendmail emulator

Pour les anglophobes, ESMTP est un émulateur de sendmail pour l’envoi seulement des mails.
C’est à dire que c’est un programme qui comprend les commandes sendmail, les traduit en requêtes smtp et les transmet à un serveur smtp.

Installation et configuration de ESMTP

sudo apt-get install esmtp

Ou alors, vous le trouverez dans Synaptic.

Aprés quoi un petit coup de

sudo nano /etc/esmtprc

pour aller modifier la configuration et mettre le stmp que l’on veut utiliser (celui de votre provider).

# Config file for ESMTP sendmail

# The SMTP host and service (port)
hostname=smtp.orange.fr:25

Dernier petit point à voir, faire un lien symbolique de sendmail vers esmtp pour faire croire à php que sendmail est installé.

sudo ln -s /usr/bin/esmtp /usr/bin/sendmail

Et voila ! Vous pouvez coder des envois de mails, dans des conditions de production, avec la méthode sendmail sans avoir eu à passer des heures à configurer votre serveur de mail 😉

Source : http://esmtp.sourceforge.net/

Directeur conseil chez Spiriit
J'accompagne nos clients sur la mise en place de la stratégie, de l'architecture et dans la structuration du projet. J'interviens en amont des projets pour la planification et en aval sur la partie KPI / Performance.
Voir l’étude de cas
Lire l’article
Lire l’actualité
En savoir plus
En savoir plus
Voir le témoignage
Fermer