Comment envoyer un email en php depuis localhost?
Comment envoyer un email en php depuis localhost?
-
Objectifs
- Être capable de configurer le serveur de messagerie pour localhost.
-
Présentation
- PHP a une fonction
mail ()
de messagerie php intégrée qui peut être utilisée pour envoyer du courrier à partir d’un script, mais cette fonction est en quelque sorte limitée car elle ne peut pas vous connecter à un serveur SMTP (protocole de transfert de courrier simple). - En réalité, ce n’est pas votre serveur Web qui se charge d’envoyer le mail, mais un serveur SMTP qui peut être installé sur la même machine qui accueille le serveur Web ou sur une machine différente.
-
Télécharger et configurer le fichier
sendmail
- Nous devrions d’abord trouver un moyen de connecter notre serveur Web (wamp) à un SMTP externe.
- Nous utiliserions Gmail dans ce cas, mais avant cela, nous devons télécharger / installer un outil qui récupérerait notre courrier électronique à partir du script php et le transmettrait au SMTP de Gmail.
- Allez d’abord sur http://glob.com.au/sendmail/ et cliquez sur le téléchargement pour télécharger.sendmail.zip
- Après le téléchargement, extrayez-le pour l’ extraire sous forme de dossier, ce qui signifie que son contenu doit se trouver dans un dossier appelé sendmail et se trouver dans .C:\wamp64\sendmail
- Maintenant, dans le dossier sendmail,créez une copie de sauvegarde du fichier sendmail.ini
- Cliquez avec le bouton droit sur sendmail.ini et ouvrez le en tant qu’administrateur puisque nous sommes sur le point de modifier son contenu
- Changez les lignes suivantes:
- Enregistrez le fichier
-
Configurez le fichier
php.ini
- Accédez à votre dossier wamp64 et déplacez-vous vers et modifiez le fichier php en tant qu’administrateur comme suit: bin\apache\apache[version here]\bin\php.ini
- Ou simplement cliquez sur sur l’icône de WampServer avec le bouton gauche de votre souris
- Choisissez Php.ini
- Si vous utilisez le bloc-notes, vous pouvez utiliser la recherche sous l’onglet d’édition ou ctrl+ F et taper « mail function » pour accéder rapidement à la partie fonction de messagerie du fichier
php.ini
- Seule la dernière ligne sera chagé: le sendmail_path que vous devez changer pour ce qui précède. Laissez les autres paramètres tels que vous les voyez. Votre chemin peut être différent selon l’endroit où vous avez extrait le dossier
sendmail
. - Enregistrez ce fichier php.ini
-
Configurez Apache
- Exécutez WampServer en tant qu’administrateur et lorsqu’il devient vert, activez ce qui suit:
- Faites un clic gauche sur l’icône verte et passez à php -> extensions php -> sockets
- Attendez que l’icône redevienne verte et suivez ce qui précède pour activer openssl.
- Si l’icône devient verte, il est temps d’activer apaches ssl_module en passant à l'apache icom lorsque vous cliquez sur l'icône verte wampserver.
- Lorsque vous avez terminé les trois étapes ci-dessus, quittez et exécutez à nouveau wampserver en tant qu'administrateur pour effectuer les modifications.
-
Configurez votre compte
gmail
- Nous devons maintenant configurer notre compte gmail pour qu'il fonctionne avec cette application sendmail.
- Connectez-vous au
compte gmail
et dans le coin supérieur droit, cliquez sur l'engrenage pour choisir les paramètres. Dans les paramètres, passez à l'onglet Transfert et POP/IMAP et activez IMAP. Sauvegarder les modifications - Revenez enfin à votre boîte de réception, un coin supérieur droit à côté de votre adresse e-mail est une petite flèche pointant vers le bas, cliquez dessus pour choisir Mon compte. Si vous ne l'avez pas, vous pouvez essayer de cliquer sur votre photo de profil pour choisir Mon compte à partir de là. Si toujours vous ne l'avez pas, vous pouvez saisir "Autoriser les applications moins sécurisées: et l'activer" dans la zone aide de gmail .
- Cliquez sur l'onglet Connexion et sécurité et faites défiler vers le bas de la page. Vous trouverez Autoriser les applications moins sécurisées: et l'activer. La plupart du temps, ce serait éteint.
- Se connecter à Google Account à l'aide du lien suivant : https://www.google.com/settings/security/lesssecureapps Deux options sont proposées : Activer pour limiter l'accès aux applications sécurisées Désactiver pour permettre l'accès à des applications moins sécurisées
- Si vous avez le message d'erreur suivant:
- Le message d'erreur "Ce paramètre n'est pas disponible pour les comptes sur lesquels la validation en deux étapes est activée" indique que vous ne pouvez pas accéder à un certain paramètre de sécurité car vous avez activé la validation en deux étapes pour votre compte.
- La validation en deux étapes est une mesure de sécurité supplémentaire qui ajoute une étape supplémentaire au processus de connexion, en plus du nom d'utilisateur et du mot de passe. Cela peut inclure une demande de code de sécurité ou une confirmation par e-mail ou par SMS pour authentifier l'utilisateur.
- Si vous avez activé la validation en deux étapes, cela signifie que votre compte est mieux protégé contre les accès non autorisés. Cependant, cela peut limiter certaines fonctionnalités ou paramètres de sécurité qui ne peuvent pas être utilisés en conjonction avec la validation en deux étapes.
- Si vous avez besoin d'accéder à ce paramètre spécifique, vous devrez désactiver temporairement la validation en deux étapes pour votre compte. Pour ce faire, vous devrez accéder aux paramètres de sécurité de votre compte et suivre les étapes pour désactiver la validation en deux étapes. Assurez-vous de réactiver la validation en deux étapes une fois que vous avez terminé pour protéger à nouveau votre compte.
- Si vous souhaitez désactiver temporairement la validation en deux étapes pour votre compte Gmail, suivez les étapes suivantes :
- Connectez-vous à votre compte Gmail à l'aide de votre navigateur web préféré.
- Cliquez sur l'icône de votre compte en haut à droite de la fenêtre Gmail et sélectionnez "Gérer votre compte Google" dans le menu déroulant.
- Dans le menu de gauche, cliquez sur "Sécurité".
- Faites défiler la page jusqu'à la section "Validation en deux étapes" et cliquez sur "Désactiver" à droite de l'option "Validation en deux étapes".
- Suivez les instructions à l'écran pour confirmer votre identité et désactiver la validation en deux étapes.
- Une fois que vous avez terminé ce que vous devez faire, il est important de réactiver la validation en deux étapes pour protéger votre compte Gmail. Pour réactiver la validation en deux étapes, retournez simplement aux paramètres de sécurité de votre compte Google et cliquez sur "Activer" à côté de l'option "Validation en deux étapes".
- Références:
- https://stackoverrun.com/fr/q/1306145
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=465
smtp_ssl=ssl
;default_domain=mydomain.com
error_logfile=error.log
;debug_logfile=debug.log
auth_username=entrez votre compte gmail ici
auth_password= entrez le mot de passe de votre compte ici
pop3_server=
pop3_username=
pop3_password=
force_sender=entrez votre compte gmail ici
force_recipient=
hostname= localhost
Soyez prudent et faites comme vous le voyez ci-dessus. J’ai supprimé la plupart des contenus indésirables de mon fichier sendmail.ini pour rendre les choses un peu plus faciles à lire.
[mail function]
;For Win32 only.
;http://php.net/smtp
SMTP=smtp.gmail.com
;http://php.net/smtp-port
smtp_port=465
;For Win32 only.
;http://php.net/sendmail-from
sendmail_from=ici écrivez votre adresse mail
;For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;http://php.net/sendmail-path
sendmail_path = "C:\wamp64\sendmail\sendmail.exe -t -i"