0

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

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

这是sendmail.ini(我sendmail.exe在该目录中有另外两个 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"

一旦我调用脚本,它就会进入等待...等待本地主机...这里是 debug.log...

09/05/02 17:34:41 ** --- 消息开始 --- 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用于现在的测试。谢谢

4

4 回答 4

1

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

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

于 2009-05-02T23:37:16.390 回答
0

GMAIL 需要 SSL afaik。

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

于 2009-05-02T23:06:43.093 回答
0

您还应该咨询您的 ISP。他们中的许多人阻止端口 25 以防止垃圾邮件。

于 2009-05-02T23:24:34.940 回答
0

发送电子邮件 - GMAIL

1) 停止服务器。

2)更改此行

[XAMPP -> PHP -> php.ini]

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

[XAMPP -> SENDEMAIL ->sendmail.ini]

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

3) 运行服务器

4) 发送邮件测试

<?php $to      = 'youremail@xxxx.com'; $subject = 'Test Email
 Email'; $message = 'Hello'; $headers = 'From:
 test@test.com' . "\r\n" .
     'Reply-To: test@test.com' . "\r\n" .
     'X-Mailer: PHP/' . phpversion();

 echo print_r(mail($to, $subject, $message, $headers),true); ?>
于 2017-04-07T14:23:24.087 回答