在Windows PHP邮件():没有错误,电子邮件不会发送(PHP mail() on Windo

2019-08-31 09:32发布

我目前正试图调试基于埃尔格-网站(我没有开发的话),我想直接从本地开发(操作系统)发送的电子邮件。 我运行WAMP与Apache 2.2.11和PHP 5.3.0

经过一番搜索,我碰到过用最简单的办法伪造的sendmail转发给我的Gmail /谷歌应用程序通过SMTP帐户,并让它做的发送。 问题是,我没有得到任何错误,任何,但没有被发送的电子邮件。

这是我做的:

  • 复制sendmail.exe和sendmail.ini在WAMP的子文件夹
  • 经由sendmail.ini配置它(配置设置都OK)
  • 编辑php.ini中添加路径sendmail.exe
    sendmail_path = "C:\Program Files\wamp\bin\sendmail\sendmail.exe -t"
  • 在php.ini评论窗外SMTP设置
    ; SMTP = localhost
    ; smtp_port = 25
    ; sendmail_from = xxx@domain.com
    ; mail.force_extra_parameters =

该mail.log文件显示以下内容:

mail() on [C:\Program Files\wamp\www\mail.php:9]: To: xxx -- 
Headers: From: xxx  Reply-To: xxx  X-Mailer: PHP/5.3.0

我的猜测是,这个问题是默认的Windows选项(指定服务器,而不是sendmail的实用程序)不覆盖。 在phpinfo()我仍然得到SMTP -> localhostsmtp_port -> 25选项,即使我评论他们。

如果有人设法得到这个工作,我会很感激一些帮助。 在我看来,使用假的sendmail是不是你的机器上安装一个邮件服务器简单得多。

谢谢!

PS请不要建议PHPMailer的之类的,因为我使用 mail()函数。 这是埃尔格是如何工作的。

Answer 1:

我已经得到它最终奏效。 问题是, PHP有一个bug在分析与路径(sendmail)在空间.ini文件。 它被固定在5.3.0版本,但手册有没有这方面的信息。

所以,是的,有可能的sendmail与PHP在Windows上使用:d。

谢谢大家的时间!



Answer 2:

请确保您有SMTP服务在本地计算机上和SMTP端口(25)打开运行。

对服务(运行 - > Services.msc)中的检查,查找发送邮件传输

如果你不能找到服务列表中的SMTP,您必须安装它:要添加,运行 - > appwiz.cpl->添加删除Windows组件 - > IIS->详细信息 - > SMTP



Answer 3:

我不知道这是否有助于或没有,我以前在这些情况下做的是设置,我的机器上的前景,并将它设置为从弹出收到电子邮件,每5分钟左右,这样,我的IP /机器认证对流行音乐,如果我只是设置:

SMTP = localhost
smtp_port = 25

在php.ini,邮件功能工作正常。 所以你的情况,只要将Outlook与弹出的工作,并在php.ini该SMTP并希望它应该工作。 我还没有测试这虽然Gmail中。



Answer 4:

PS请不要建议PHPMailer的之类的,因为我使用mail()函数。 这是埃尔格是如何工作的。

......除非你使用的是改变了这种行为的一个插件:
http://community.elgg.org/pg/plugins/costelloc/read/16498/phpmailer



文章来源: PHP mail() on Windows: no errors, the email isn't sent