Capture d'écran du Webmail de l'outil MailCatcher

Pour tester l'envoi d’e-mails pendant le développement de votre site, vous pouvez utiliser MailCatcher. MailCatcher est un outil très pratique car il va intercepter les e-mails que vous envoyez en local, avant qu’ils ne soient envoyés au destinataire. Ainsi, les e-mails ne sont pas réellement envoyés, mais grâce à une webmail, vous pouvez consulter les messages.

Installation de MailCatcher

Il vous faut préalablement installer la bibliothèque Ruby.

Sous Windows :

  • Rendez-vous sur cette page : https://rubyinstaller.org/downloads/. La version correspondante à votre environnement sera en gras précédée d’un flèche : =>
  • Une fois téléchargée, procédez à son installation.

Sous Linux :

  • Ouvrez le terminal pour installez la bibliothèque Ruby et ses dépendances :
 
1

sudo apt-get install ruby ruby-dev rubygems libsqlite3-dev

Ensuite, ouvrez le terminal – ou PowerShell sous Windows, et tapez cette commande pour installer MailCatcher :

 
1

gem install mailcatcher

(Gem est un gestionnaire de paquet pour le langage Ruby.)

Configuration de MailCatcher

Ouvrez à présent votre fichier php.ini et recherchez la ligne [mail function]. Puis définissez son port SMTP à 1025 :

 
1
2
3
4
5
6

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP=127.0.0.1
; http://php.net/smtp-port
smtp_port=1025

  • Sous windows, renseignez l’adresse pour l’envoi d’e-mail :
 
1
2
3

; For Win32 only. 
; http://php.net/sendmail-from 
sendmail_from = votre@adresse-d'envoi

  • Sous Linux, renseignez le chemin complet pour l'envoi d'e-mail :
 
1
2
3

; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 
; http://php.net/sendmail-path
sendmail_path = /usr/bin/env catchmail -f votre@adresse-d'envoi

Enregistrez les changements effectués, puis redémarrer votre serveur local.

MailCatcher est désormais activé. Vous pouvez l’utiliser pour l’ensemble de vos projets. Pour l’utilisation de MailCatcher sur un projet Symfony, ouvrez le fichier .env :

 
1
2

###> symfony/swiftmailer-bundle ###
MAILER_URL=smtp://localhost:1025

Utilisation de MailCatcher

Lancez le terminal, puis tapez cette ligne de commande :

 
1

mailcatcher

Un message vous indique alors que MailCatcher est lancé.

Pour accéder à l'interface de MailCatcher et consulter les e-mails envoyés, rendez-vous sur : http://127.0.0.1:1080