如何配置 XAMPP PHP 通过安全 smtp 我的 ISP 从本地主机发送邮件

Posted

技术标签:

【中文标题】如何配置 XAMPP PHP 通过安全 smtp 我的 ISP 从本地主机发送邮件【英文标题】:How to configure XAMPP PHP to send mail from localhost via secure smtp my ISP 【发布时间】:2013-11-23 08:59:52 【问题描述】:

为了发送电子邮件,我通常使用 Windows 7 Thunderbird 通过我的 ISP 配置安全 SMTP(即 SMTP 服务器的登录名和密码)。连接安全性:无,密码传输不安全。邮件发送正常。

我尝试配置 XAMPP php.ini

[mail function]
SMTP=*my_isp_smtp_server*
smtp_port=25
sendmail_from=*my_email_address*
sendmail_path="\"c:\xampp\sendmail\sendmail.exe\" -t"
mail.add_x_header = Off

和 sendmail.ini

smtp_server=*smtp_server.my.isp*
smtp_port=25
error_logfile=error.log
debug_logfile=debug.log
auth_username=*login_to_my_isp_smtp_server*
auth_password=*password_to_my_isp_smtp_server*
force_sender=*my_email_address*

在我的 php 脚本中,我使用标准的 php 函数:

mail($recipient, $subject, $message, $headers);

我没有收到错误消息,但邮件未送达。 请问有人能帮帮我吗?

【问题讨论】:

看看here,我自己还没有尝试过,但是这个 CodeIgniter 问题/答案的设置可能会对你有所帮助。那里的评论说 localhost 仅适用于Gmail。对于所有其他人,您需要实时托管(所以没有本地主机)。 【参考方案1】:

对于在寻找解决方案时仍在苦苦挣扎的每个人,使用 sendmail 包,您可以将其配置为使用 SMTP 安全服务器,例如 gmail强>。为简单起见,我将在下面展示一个使用 gmail 服务器的示例,但您可以使用 hMailServer 设置自己的 SMTP 服务器。文档可在 here 获得,它使用端口 465 进行 TLS。您只需从以下 gmail 配置中更改 SMTP 服务器端口地址密码。结构保持不变。

如果你想去gmail路由,例如,检查这些参数here:

明白了,进行以下更改:

C:\xampp\php\php.ini 中取消注释extension=php_openssl.dll重新启动Apache 以添加SSL 支持。还可以按照文档指南更改这些值并相应地设置sendmail_from

SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = yourgmailaddress@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

C:\xampp\sendmail\sendmail.ini 中镜像这些更改:

[sendmail]

smtp_server=smtp.gmail.com
smtp_port=587
auth_username=yourgmailaddress@gmail.com
auth_password=yourgmailpassword
force_sender=yourgmailaddress@gmail.com

【讨论】:

以上是关于如何配置 XAMPP PHP 通过安全 smtp 我的 ISP 从本地主机发送邮件的主要内容,如果未能解决你的问题,请参考以下文章

如何修改 xampp 以使用 php 发送邮件?

在 Xampp 中将 Gmail 配置为 SMTP 以发送邮件 - 出现错误。为啥?

使用 xampp localhost 发送电子邮件

带有 XAMPP 的 SMTP 服务器?

php localhost邮件没有使用xampp发送

XAMPP OSX Lion 让邮件正常工作