我目前正在试图debugging基于Elgg的网站(我没有开发它),我想直接从本地开发机器(WinXP)发送电子邮件。 我使用Apache 2.2.11和PHP 5.3.0运行WAMP
经过一番search,我遇到的最简单的解决scheme是使用假发送邮件通过SMTP转发到我的GMail /谷歌应用程序帐户,让它做发送。 问题是我没有任何错误,但电子邮件没有被发送。
以下是我所做的:
sendmail_path = "C:\Program Files\wamp\bin\sendmail\sendmail.exe -t"
; 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 -> localhost
和smtp_port -> 25
选项,即使我评论他们。
如果任何人设法得到这个工作,我真的很感激一些帮助。 在我看来,使用假的sendmail比在你的机器上安装邮件服务器简单得多。
谢谢!
PS请不要build议PHPMailer之类的,因为我必须使用mail()函数。 这就是Elgg的工作原理。
我已经得到它最终工作。 问题是, PHP解析.ini文件的路径中有空格(sendmail) 有一个错误 。 它在5.3.0版本中得到修复,但手册上没有这方面的信息。
所以,是的,可以在Windows上使用PHP的sendmail:D。
谢谢大家的时间!
确保您的本地计算机上运行了SMTP服务,并且SMTP端口(25)已打开。
检查服务(Run-> services.msc)并查找发送邮件传输
如果在服务列表中找不到SMTP,则必须安装它:要添加,请执行以下操作:运行 – > appwiz.cpl->添加删除Windows组件 – > IIS->详细信息 – > SMTP
我不确定这是否有帮助,我在这些情况下曾经做过的事情是设置,在我的机器上的展望,并设置从每隔5分钟从流行的电子邮件,这样我的IP /机器进行身份验证反对流行,如果我只是设置:
SMTP = localhost smtp_port = 25
在php.ini中,邮件功能工作正常。 所以在你的情况下,只要设置你的前景工作与流行,并在php.ini中使用该smtp,并希望它应该工作。 我没有测试过这将GMail虽然。
PS请不要建议PHPMailer之类的,因为我必须使用mail()函数。 这就是Elgg的工作原理。
…除非你使用插件来改变这种行为:
http://community.elgg.org/pg/plugins/costelloc/read/16498/phpmailer