使用sendmail.exe的php邮件

时间:2009-05-02 23:00:24

标签: php email sendmail.exe

我在localhost windows XAMPP m / c上使用VISTA ...使用gmail作为smpt服务器

我正在尝试使用简单的PHP脚本发送电子邮件

这里是sendmail.ini的配置详细信息(我有sendmail.exe,另一个在该目录中有2个dll)

smtp_server=smtp.gmail.com
; smtp port (normally 25)

smtp_port=465

; 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=xxxxxxx
auth_password=xxxxxx

hostname=localhost

and I have changed the php.ini

[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25

; For Win32 only.
;sendmail_from = xxxxx

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"

一旦我调用脚本就会进入等待...对于localhost ... 这是debug.log ...

  

09/05/02 17:34:41 ** --- MESSAGE BEGIN ---   09/05/02 17:34:41 **收件人:xxx@yahoo.com   09/05/02 17:34:41 **主题:表格提交结果   09/05/02 17:34:41 **来自:我的网站   09/05/02 17:34:41 **回复:xxx@gmail.com   09/05/02 17:34:41 **   09/05/02 17:34:41 **姓名:xxx   09/05/02 17:34:41 **电子邮件:xxx@yahoo.com   09/05/02 17:34:41 **消息:嘿测试消息   09/05/02 17:34:41 **   09/05/02 17:34:41 **   09/05/02 17:34:41 ** ---消息结束---   09/05/02 17:34:41 **连接到smtp.gmail.com:465   09/05/02 17:34:41 **已连接。

我是PHP的新手,想知道是否有更好的方式来发送邮件...我现在还没有附带HTML /多部分邮件的附件... 此外,我应该能够在没有安装SMTP服务器的localhost中进行测试。我想用GMAIL进行测试。 THnks

4 个答案:

答案 0 :(得分:1)

我强烈建议您使用库,例如PHPMailer。这是他们的gmail example

另一个好的库(我没有用过)是SwiftMailer。这是他们的gmail example

答案 1 :(得分:0)

GMAIL需要SSL afaik。

我知道Zend_MailSwiftmailer的免费(可能是“好”)php邮件库。

答案 2 :(得分:0)

您还应该咨询您的ISP。其中很多都阻止端口25以防止垃圾邮件。

答案 3 :(得分:0)

发送电子邮件 - GMAIL

1)停止服务器。

2)改变这一行

[XAMPP - > PHP - >的php.ini]

Task

[XAMPP - > SENDEMAIL - > sendmail.ini]

sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

3)运行服务器

4)发送电子邮件测试

smtp_port=587 
auth_username= xxxx@gmail.com 
auth_password= xxxx 
smtp_ssl=auto