Sendmail Wamp Php

我已经花了整个早晨在互联网上搜索这个,试图找到一个解决方案。
我已经在Windows 8.1上安装了wamp服务器,我试图发送一些邮件与sendmail(http://glob.com.au/sendmail/)和我的Gmail帐户

当我配置sendmail使用端口号465我总是得到这个错误:套接字错误#10060Connection超时

如果我尝试使用端口号587,我在错误日志中得到这一行:连接正常关闭。但是没有发送电子邮件。

这是我的sendmail.ini文件

[sendmail]
smtp_server=smtp.gmail.com
;I tried both: 587, 465
smtp_port=587
; I tried: "blank, auto ssl, tls, none"
smtp_ssl=
error_logfile=error.log
debug_logfile=debug.log
auth_username=myaccoun@gmail.com
auth_password=mypass
hostname=localhost

这是php.ini文件

[mail function]
smtp_port = 465
sendmail_path="C:\wamp\sendmail\sendmail.exe -t"
mail.add_x_header = On

ssl_module在apache上是活动的,php使用php_open_ssl和php_socket扩展。

我也试图使用stunnel whitout任何成功

EDIT 27/01/2014

我在sendmail.ini上设置smtp_port = 465和smtp_ssl = ssl。此外,我设置sendmail.exe必须作为Windows XP SP3程序运行。这样做后,当我在Windows控制台上运行sendmail.exe时,它会正确发送电子邮件。但是,当wamp尝试发送邮件时,我在sendmail的错误日志中收到此错误:Socket Error#10060Connection timed out。

这是我用来测试sendmail的代码:

<?php
$email = "mymail@gmail.com";
$to = "mymail@gmail.com";
$subject = "Hi!";
$body = "Hi,How are you?";
$headers = 'From: ' .$email . "\r\n".'Reply-To: ' . $email. "\r\n".'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $body, $headers)) echo("<p>Email successfully sent</p>");
else echo("<p>Email delivery failed</p>");
?>
最后我找到答案。

问题是sendmail必须作为管理员运行。这是帮助任何人处理我的情况的解决方案。

>右键单击sendmail.exe
>属性
>兼容性
>更改所有用户的配置
>执行为Windows XP SP 3
>执行作为管理员

并保存:D

这个废话丢了2天:(

http://stackoverflow.com/questions/21337859/sendmail-wamp-php

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Sendmail Wamp Php