在php.ini中我设置:
SMTP = smtp.gmail.com
smtp_port = 465
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = mygmail@gmail.com
在我的sendmail.ini中:
smtp_server=smtp.gmail.com
smtp_ssl=ssl
auth_username=mygmail@gmail.com
auth_password=mygmail password
在我的错误日志中:
13/05/18 23:33:30 : Socket Error # 10060<EOL>Connection timed out.
电子邮件实际发送了两次,但99%的时间,我得到与上面相同的错误。我禁用了路由器的SPI和计算机的防火墙。有什么想法吗?
答案 0 :(得分:4)
Windows的大多数本地方框都没有SMTP服务器。您可以使用外部SMTP服务器并在php.ini
文件中对其进行配置,但无法进行SMTP身份验证。
我建议您使用PHPMailer,它是一个简单而灵活的PHP类,可以使用带有身份验证的SMTP服务器。它比使用捆绑的PHP mail()
函数更安全。