【发布时间】:2014-05-17 11:13:50
【问题描述】:
一年前,我尝试启用从 WAMP 作为 localhost 发送电子邮件但失败了。我只是再次齐心协力,但又失败了。这就是我所做的,希望有人能帮帮我。
由于 WAMP 不附带 sendmail.exe,因此创建了一个文件夹 c:\wamp\sendmail,并将 DIR 中所示的以下文件复制到其中:
Directory of c:\WAMP\sendmail
14-01-11 03:44 PM 1,112,064 libeay32.dll
18-06-11 01:10 AM 932,864 sendmail.exe
04-04-14 10:45 PM 2,123 sendmail.ini
14-01-11 03:44 PM 275,968 ssleay32.dll
此文件夹中的sendmail.ini设置如下,关键行为5(smtp_server、smtp_port、default_domain、auth_username和auth_password):
smtp_server=smtp.gmail.com
; smtp port (normally 25)
smtp_port=587
smtp_ssl=auto
; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify
;default_domain=localhost
; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging
error_logfile=error.log
; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging
;debug_logfile=debug.log
; if your smtp server requires authentication, modify the following two lines
auth_username=mynamegmail.com
auth_password=mypassword
在c:\WAMP\bin\php\php5.4.3、php.ini的php.ini中,修改了一行,即
sendmail_path ="\"c:\Wamp\sendmail\sendmail.exe\" -t"。
接下来在C:\wamp\www 中创建一个sendmail.php 文件,其内容如下:
<?php
mail('receipient@yahoo.com','sample mail','sample content','From: sender@gmail.com');
?>
在运行 localhost 的网络浏览器中,`sendmail.phpv 已运行,但邮件未通过。
- 为什么本地主机没有按照
sendmail.php的指示发送邮件? - 有什么遗漏或错误吗?
-
sendmail.exe加上其他.dll错了吗? -
php.ini、sendmail.ini、sendmail.php中的条目错了吗?
【问题讨论】:
-
您使用了错误的 SMTP 端口,如 GMail 常见问题解答中所述:If you tried configuring your SMTP server on port 465 (with SSL)。 Also shouldn't those changes be made to the
sendmail.inifile? -
Sverri 谢谢,实际上尝试了 25 和 465 端口,但没有工作。 GMail 设置中列出的所有问题都已检查。 Telnet 到 smtp.gmail.com 465 通过,即空白命令提示符,没有消息。使用VB5可以发送CDO邮件。在这方面真的摸不着头脑。
标签: php email sendmail.exe