我在Windows 8上安装了wamp。
收到错误:
警告:mail()[function.mail]:无法连接到mailserver “localhost”端口25,验证您的“SMTP”和“smtp_port”设置 php.ini或在第9行的C:\ wamp \ www \ mail.php中使用ini_set()
以下是简单的源代码:
<?php
// The message
$message = "Line 1\r\nLine 2\r\nLine 3";
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70, "\r\n");
// Send
mail('caffeinated@example.com', 'My Subject', $message);
?>
我需要在Windows 8上通过php安装哪些软件才能发送电子邮件? sendmail,msmtp或ssmtp?
答案 0 :(得分:11)
试试这个
配置此设置
php.ini 中的
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = my-gmail-id@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
sendmail.ini :中的
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=my-gmail-id@gmail.com
auth_password=my-gmail-password
force_sender=my-gmail-id@gmail.com
重要提示:如果
,则会在以下行中发表评论sendmail_path
中有另外php.ini
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
注意:在我的Windows 8.1
中经过测试并正常运行
答案 1 :(得分:5)
可能的解决方案。 See this question
对我来说,在localhost上配置邮件客户端非常困难。我也尝了很多次。后来我转向其他解决方案。
您可以在某些配置中使用SwiftMailer或PhpMailer,也可以在零配置下尝试this tool。
答案 2 :(得分:1)
另外,如果您使用的是Windows PC进行开发而不是作为生产服务器,那么我建议您不要在中设置 sendmail windows ,只需使用这个方便的工具。
Test Mail Server Tool (Its Free)
它将模拟一个电子邮件服务器,一旦任何脚本尝试发送电子邮件,它将拦截它并作为.eml
文件为您打开,您可以在任何电子邮件阅读器中打开它,如outlook或{ {3}}
现在设置这个工具只是一个breez,你将永远感谢我保存,从而不必手动设置sendmail,我必须提到它是在Linux机器上。 ;)
答案 3 :(得分:1)
我建议使用水银(http://www.pmail.com/downloads_s3_t.htm - 用于Win32和NetWare系统的Mercury / 32邮件传输系统v4.74)。
这包含在XAMPP中,相当容易设置,您无需配置或(ab)使用电子邮件帐户。您可以在水银邮件日志窗口中看到整个smtp事务。
答案 4 :(得分:1)
在这里查看如何从php设置邮件的优秀答案:PHP mail form doesn't complete sending e-mail
答案 5 :(得分:1)
使用此功能工具: https://github.com/PHPMailer/PHPMailer
Mail()是难以使用的prette,此功能允许您使用电子邮件服务器STMP功能发送电子邮件。
阅读文档: https://github.com/PHPMailer/PHPMailer/blob/master/README.md
答案 6 :(得分:1)
您需要使用电子邮件服务器和php。 https://www.hmailserver.com/
答案 7 :(得分:0)
通过需要SMTP的服务器使用电子邮件发件人功能时 身份验证,您必须指定它。并设置主机,用户名和 密码(如果不是默认端口,可能是端口 - 25)。
例如,我通常使用与此类似的设置的PHPMailer:
//ini settings
ini_set("SMTP", "aspmx.l.google.com");
ini_set("sendmail_from", "YOURMAIL@gmail.com");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->CharSet = 'UTF-8';
$mail->Host = "mail.example.com"; // SMTP server example
$mail->SMTPDebug = 0; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP port for the GMAIL server
$mail->Username = "username"; //Your SMTP account username example
$mail->Password = "password"; //Your SMTP account password example
您可以找到有关PHPMailer here的更多信息。
您可以通过视频登录wondows here上的SMTP配置方式。