Maison  >  Article  >  développement back-end  >  Pourquoi ma fonction PHP mail() échoue-t-elle sous Windows 8 et comment puis-je corriger l'erreur « Échec de la connexion au serveur de messagerie sur le port 25 » localhost\ » ?

Pourquoi ma fonction PHP mail() échoue-t-elle sous Windows 8 et comment puis-je corriger l'erreur « Échec de la connexion au serveur de messagerie sur le port 25 » localhost\ » ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-27 18:20:14932parcourir

Why is my PHP mail() function failing on Windows 8, and how can I fix the

Dépannage de l'envoi d'e-mails avec la fonction PHP Mail sous Windows 8

Si vous rencontrez une erreur du type « Échec de la connexion au serveur de messagerie sur « localhost » port 25" lors de l'utilisation de la fonction PHP mail() sous Windows 8, cela indique un problème avec les paramètres du serveur SMTP. Voici comment le résoudre :

Pour activer l'envoi d'e-mails via PHP sous Windows 8, vous devez installer et configurer un serveur SMTP. Parmi les trois options mentionnées (sendmail, msmtp et ssmtp), sendmail est couramment utilisé sur les systèmes Windows.

Étapes pour configurer Sendmail sur Windows 8 :

1. Installez Apache, PHP et Sendmail

  • Assurez-vous qu'Apache, PHP et Sendmail sont installés sur votre système.

2. Modifier les paramètres php.ini

  • Ouvrez le fichier php.ini (situé dans votre répertoire d'installation PHP) et apportez les modifications suivantes :
SMTP=smtp.your-smtp-server.com
smtp_port=your-smtp-server-port (usually 587 or 25)
sendmail_from = [email protected]
sendmail_path = "\"C:\path-to-sendmail\sendmail.exe\" -t"

3. Configurez sendmail.ini

  • Créez un fichier nommé sendmail.ini dans le même répertoire que php.ini et ajoutez le contenu suivant :
smtp_server=smtp.your-smtp-server.com
smtp_port=your-smtp-server-port
error_logfile=error.log
debug_logfile=debug.log
[email protected]
auth_password=your-smtp-server-password
[email protected]

4. Remplacez sendmail_path dans php.ini (si nécessaire)

  • S'il existe un autre paramètre sendmail_path dans le fichier php.ini (par exemple, sendmail_path="C:xamppmailtodiskmailtodisk.exe"), commentez-le out.

Remarque :

  • Remplacez "votre-serveur-smtp.com" et "votre-port-de-serveur-smtp" par le valeurs appropriées pour votre serveur SMTP.
  • Dans le fichier sendmail.ini, mettez à jour les adresses e-mail et le mot de passe avec votre serveur SMTP actuel informations d'identification.

5. Testez l'envoi d'e-mails

  • Créez un script PHP simple comme celui fourni dans la question d'origine.
  • Exécutez le script et vérifiez si l'e-mail est envoyé avec succès.

Si vous rencontrez d'autres problèmes, consultez les journaux d'erreurs pour plus de détails.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn