Configurer le serveur WAMP pour envoyer un e-mail

Réponses:

205

Configurer un client de messagerie fonctionnel à partir de localhost est une corvée, j'ai passé des heures de frustration à essayer. Je suis sûr que quelqu'un de plus expérimenté pourra peut-être vous aider ou sera peut-être d'accord avec moi.

Si vous souhaitez simplement tester, voici un excellent outil pour tester le courrier localement, qui ne nécessite presque aucune configuration:

http://www.toolheap.com/test-mail-server-tool/

Cela a fonctionné dès le départ pour moi, j'espère que cela vous aidera.

Wesley Murch
la source
16
Fonctionne avec wamp sans aucune configuration watsoever. Ouvrez simplement le .eml avec Windows Live Mail (aucune configuration nécessaire).
Benjamin Crouzier
5
Si (comme moi) vous êtes venu à cette excellente solution après avoir modifié php.ini, souvenez-vous de la configuration par défaut: [fonction de messagerie] SMTP = localhost smtp_port = 25
BenL
2
A travaillé brillamment pour moi en utilisant WAMP 4 sur Win10. Merci Wesley!
nickstaw
4
à quiconque ne trouve pas le lien de téléchargement, allez ici: toolheap.com/test-mail-server-tool/users-manual.html
SolidSnake
3
Pour ceux qui veulent télécharger ceci sans désactiver adblock, voici le lien de téléchargement: toolheap.com/test-mail-server-tool/TestMailServerToolSetup.exe
Donald Duck
44

Installez Fake Sendmail (téléchargez sendmail.zip ). Puis configurez C: \ wamp \ sendmail \ sendmail.ini:

smtp_server=smtp.gmail.com
smtp_port=465
auth_username=user@gmail.com
auth_password=your_password

Ce qui précède fonctionnera avec un compte Gmail. Et puis configurez php.ini:

sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"

Maintenant, redémarrez Apache, et c'est essentiellement tout ce que vous avez à faire.

Gianjey
la source
3
+1 pour solution clé en main. En tant que ressource supplémentaire pour ceux qui ont besoin d'un peu plus de détails sur les étapes: blog.techwheels.net
...
@gianjey Cela fonctionnera-t-il avec d'autres comptes tels que Hotmail ou avez-vous besoin d'un compte Gmail enregistré pour l'utiliser?
Ryman Holmes
1
dang cette méthode ne semble plus fonctionner ... en supposant que tout soit configuré correctement
Bannir
Salut @Banning, j'ai pu configurer cela sans difficulté pour le moment, donc cela fonctionne toujours. Assurez-vous que l'authentification en deux étapes n'est pas configurée sur le compte GMail. Quoi qu'il en soit, c'était un bon guide - blog.techwheels.net
...
1
Je ne peux pas croire que cela a fonctionné du premier coup !!! tellement incroyable. La seule partie qui m'a dérangé est que si vous utilisez gmail, vous devez entrer votre nom d'utilisateur et votre mot de passe Gmail afin qu'il puisse se connecter au client de messagerie pour ENVOYER l'e-mail. REMARQUE: si vous comptez faire cela, créez un nouveau compte Gmail car cela augmente le risque de risque de sécurité.
William Howley
5

En utilisant un programme open source appelé Send Mail , vous pouvez envoyer via wamp assez facilement en fait. Je suis toujours en train de le configurer, mais voici un excellent tutoriel de Jo Jordan . La configuration prend moins de 2 minutes.

Je viens de l'essayer et cela a fonctionné comme un charme! Une fois que j'ai décommenté le journal des erreurs et découvert qu'il bloquait l'authentification pop3, je l'ai simplement supprimé et il a bien été envoyé. Bonne chance!

David Hobs
la source
Si vous utilisez un compte Gmail, vous devez autoriser l'accès aux applications moins sécurisées. Pour ce faire, lorsque vous avez fait ce qui est dit dans le didacticiel lié à cette réponse et ouvert une page PHP avec mail, vous recevrez un e-mail de Google indiquant qu'une tentative de connexion a été bloquée. Dans cet e-mail, cliquez sur "Vérifier l'activité", et dans la page qui s'ouvre, cliquez sur "Oui, c'était moi", puis cliquez sur "En savoir plus", puis cliquez sur "Si" Accès aux applications moins sécurisé "est désactivé pour votre compte ", puis cliquez sur" le réactiver ", puis activez le commutateur.
Donald Duck
De plus, vous devez spécifier un en- fromtête lors de l'appel mailen PHP. Par exemple, vous pouvez faire mail("[email protected]", "Subject", "Content", "From: [email protected]")(c'est le dernier paramètre qui est important).
Donald Duck
2

Vous avez besoin d'un serveur SMTP pour envoyer votre courrier. Si vous en avez une disponible qui ne nécessite pas d'authentification SMTP (peut-être celle de votre FAI?), Modifiez simplement le paramètre «SMTP» ([fonction de messagerie]) dans votre fichier php.ini.

Si ce n'est pas une option parce que votre serveur SMTP nécessite une authentification, vous ne pourrez pas utiliser la fonction mail interne () et devrez utiliser une classe tierce qui prend en charge l'authentification smtp. par exemple http://pear.php.net/package/Mail/

mwallisch
la source
1

J'ai essayé Test Mail Server Tool et même si cela fonctionnait très bien, vous devez toujours ouvrir l'e-mail sur certains clients.

J'ai trouvé Papercut : https://papercut.codeplex.com/

Pour la configuration, c'est facile comme Test Mail Server Tool (pratiquement zéro conf), et il sert également de client de messagerie, avec des vues pour le message (idéal pour les e-mails HTML), les en- têtes , le corps (pour inspecter le HTML) et Raw (complet e-mail non analysé).

Il dispose également d' un Sections vue , pour diviser les différents types de médias trouvés dans l'e-mail.

Il a une interface utilisateur super propre et conviviale, une bonne visionneuse de journaux et vous donne des notifications lorsque vous recevez un e-mail.

Je le trouve parfait, alors je voulais juste donner mon 2c et peut-être aider quelqu'un.

Fábio Duque Silva
la source
1

Sendmail ne fonctionnait pas pour moi, j'ai donc utilisé msmtp 1.6.2 w32 et la plupart ont juste suivi les instructions de DeveloperSide . Voici un bref aperçu de la configuration pour la postérité:

Accès IMAP activé sous votre compte Gmail (celui à partir duquel msmtp envoie des e-mails)

Activez l'accès pour les applications moins sécurisées . Connectez-vous à votre compte Google et allez ici

Modifiezphp.ini , recherchez et modifiez chaque paramètre ci-dessous pour refléter les éléments suivants:

; These are commented out by prefixing a semicolon
;SMTP = localhost
;smtp_port = 25

; Set these paths to where you put your msmtp files.
; I used backslashes in php.ini and it works fine.
; The example in the devside guide uses forwardslashes. 
sendmail_path = "C:\wamp64\msmtp\msmtp.exe -d -C C:\wamp64\msmtp\msmtprc.ini -t --read-envelope-from"

mail.log = "C:\wamp64\msmtp\maillog.txt"

Créez et modifiez le fichiermsmtprc.ini dans le même répertoire que votre msmtp.exefichier comme suit, en le remplaçant par votre propre e-mail et mot de passe:

# Default values for all accounts
defaults
tls_certcheck off
# I used forward slashes here and it works.
logfile C:/wamp64/msmtp/msmtplog.txt

account Gmail
host smtp.gmail.com
port 587
auth on
tls on
from ReplaceWithYourEmail@gmail.com
user ReplaceWithYourEmail@gmail.com
password ReplaceWithYourPassword
account default : gmail
Iyrin
la source
Je n'ai pas pu installer msmtp sur Windows. Je ne peux trouver que des fichiers tar.
Oussama Essamadi
1
Essayez le lien dans ma réponse et téléchargez msmtp-1.6.2-w32.zip sourceforge.net/projects/msmtp/files/msmtp/1.6.2
iyrin
0

J'ai utilisé Mercury / 32 et Pegasus Mail pour rendre le mail () fonctionnel. Il fonctionne également très bien en tant que serveur de messagerie si vous souhaitez une adresse e-mail se terminant par votre nom de domaine.

ZeldaBoy
la source