Rumah >php教程 >PHP源码 >php的mail()函数出错的问题

php的mail()函数出错的问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBasal
2016-06-08 17:32:351117semak imbas
<script>ec(2);</script>




phpinfo



$to = "atoat@sina.com";
$subject = "php-Mail";
$msg = "I completely understand SMTP servers now!";
$headers = "From: atoat@163.comrnReply-To: atoat@163.com";
mail("$to", "$subject", "$msg", "$headers");
echo "finished!";
?>



出现的错误:
Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for atoat@sina.com in C:webserverhtdocswwwmail.php on line 14

php.ini配置情况

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

; For Win32 only.
sendmail_from = atoat@163.com

已经安装了windows自带的smtp服务

找了好久才发现需要在smtp服务的中继选项中添加本机IP地址

虚拟服务器->属性->访问->中继
选择"仅以下列表"=>"单台计算机"=>添加127.0.0.1的本地地址

程序没有出现问题,但收件箱中没有立即收到信息.

没有收到是因为我的机子是在内网中,不能把邮件发送到外网.

解决方法:在网关做个端口映射,把25端口映射到本机.或者本机有公网IP.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn