xampp php 发送邮件
Posted
技术标签:
【中文标题】xampp php 发送邮件【英文标题】:xampp php send mail 【发布时间】:2012-12-15 14:12:32 【问题描述】:我在 *** 和 google 上搜索了如何设置 xampp
、mercury
和 php
代码以使用 window server 2008 r2 发送邮件。
通过教程发现我可以使用Mail::factory
和smtp.gmail.com
发送邮件,也可以使用Mercury 发送邮件(File -> 发送邮件消息),my_email_address@my_domain_name.com
在 Mercury 中注册。所以我尝试使用php
代码发送邮件。但在我的情况下它仍然不起作用。
这是我的配置:
C:/xampp/apache/php.ini
sendmail_path = "\xampp\sendmail\sendmail.exe -t -i"
sendmail.ini
smtp_server=my_domain_name.com
smtp_port=25
error_logfile=error.log
debug_logfile=debug.log
auth_username=my_email_address@my_domain_name.com
auth_password=my_password
force_sender=my_email_address@my_domain_name.com
hostname=my_domain_name.com
代码 php
$to = $email;
$subject = "Hello";
$message = "How are you ?";
$from = "my_email_address@my_domain_name.com";
$headers = "From:" . $from;
$result = mail($to,$subject,$message,$headers);
if($result)
echo "Mail Sent." . $result;
else
echo "Failure." . $result;
我签入C:\xampp\sendmail\debug.log
并收到错误
--- MESSAGE END ---
12/12/31 06:46:04 ** Connecting to my_domain_name.com:25
12/12/31 06:46:06 ** Disconnected.
12/12/31 06:46:06 ** Disconnected.
12/12/31 06:46:06 ** Disconnected.
12/12/31 06:46:06 ** Socket Error # 10061<EOL>Connection refused.
我哪里错了?你能帮帮我吗?
【问题讨论】:
您的debug.log
Socket Error [..] Connection refused
表明,没有 SMTP 服务器实际上在回复 my_domain_name.com:25
确保有一个 smtp 服务器启动并运行,并且端口 25 没有被防火墙阻止。
@MichelFeldheim 谢谢你的回答,我检查了我的窗口防火墙,SMTP 端口 25 在入站规则中是允许的,但仍然无法正常工作。我如何知道 smtp 服务器已启动并正在运行?
【参考方案1】:
大部分时间是服务器的ip问题。 因为大多数提供商不允许来自动态 ips 的流量,来自没有上帝 spf 记录的服务器...
一种解决方案是,创建一个 gmail 帐户,然后通过 gmail 或内部交换服务器转发所有流量。 XAMPP Sendmail using Gmail account
【讨论】:
感谢您的回答。我可以使用我的 gmail 帐户发送邮件,但不想使用 gmail 帐户发送邮件。我想为我的域创建新帐户,例如 support@my_domain_name.com 来发送邮件。 您在哪里托管您的域?您是否已经拥有电子邮件提供商?在那里创建一个帐户并为您使用 smtp 登录数据 sendmail.ini 感谢您的回答。这是否意味着我需要为我的域购买电子邮件?我在 Mercury 中为我的域(例如:support@my_domain_name.com)创建了一封电子邮件,并使用 Mercury(文件->发送邮件消息)成功地从这个电子邮件地址发送邮件到一些雅虎邮件。那么为什么我需要为我的域购买电子邮件呢?请解释一下,我很感激。 我从 www.domain.com 购买了一个域名 因为不可能在主服务器上运行电子邮件服务器。最好在您的域中使用 Google als。【参考方案2】:请按照以下链接中的说明进行操作:-
http://system66.blogspot.com/2010/01/how-to-send-mail-from-localhost-with.html
【讨论】:
感谢您的回答。我已经像您上面的链接一样进行了配置,但它不起作用以上是关于xampp php 发送邮件的主要内容,如果未能解决你的问题,请参考以下文章