LAMP服务器拒绝使用PHP mail()函数发送电子邮件
我把我的LAMP服务器设置在树莓pi上 除了在PHP中使用mail()函数外,其他一切似乎都正常运行 我似乎不明白为什么它不起作用。我认为这与服务器设置本身有关。我想也可能是路由器阻止了来自服务器的传出流量,但我几乎100%肯定是LAMP服务器本身LAMP服务器拒绝使用PHP mail()函数发送电子邮件,php,email,lamp,Php,Email,Lamp,我把我的LAMP服务器设置在树莓pi上 除了在PHP中使用mail()函数外,其他一切似乎都正常运行 我似乎不明白为什么它不起作用。我认为这与服务器设置本身有关。我想也可能是路由器阻止了来自服务器的传出流量,但我几乎100%肯定是LAMP服务器本身 <?php $to = "myemail@myemail.com"; $subject = $_POST['sub']; $body = $_POST['body']; mail($to, "Website Contact R
<?php
$to = "myemail@myemail.com";
$subject = $_POST['sub'];
$body = $_POST['body'];
mail($to, "Website Contact Request:".$subject, $body);
$ret = $_POST['email'];
if($ret!=null){
mail($ret,"Anthony Russell.Info Auto-Reply","Thank you for your email, I will be in touch soon!");
}
header( 'LOCATION:index.php' ) ;
?>
更新
我刚刚学习了本教程,但没有成功我认为您需要将第四个参数,
$headers
添加到mail()
函数中。您应该在中至少放置一个From:
标题。此外,您还可以将该函数放入if/else
语句中,以测试返回值。如果返回true
,那么PHP至少会将邮件发送给本地MTA。@Crackertastic所以我应该添加的是,这是我在GoDaddy上托管的站点的复制和粘贴。我真的把网页从Godaddy移到了我的家庭服务器上。godaddyhave you setup sendmail?JoniSalmi不知道那是什么,所以我猜不是。你能把它作为一个答案吗?老实说,这可能是很多事情(包括你说的服务器设置),但这只是我在脑海中注意到的一些事情。每个邮件服务器在处理电子邮件时都是不同的。您发送的邮件可能被标记为垃圾邮件,可能在服务器端处于慢速队列中,等等。不过,请再次将其放入if()
中,然后查看您是否从中获得true
。至少那时你知道PHP做了它的一部分,并把它交给MTA(希望)交付。就在几天前,我遇到了一个类似的问题,这是因为接收服务器上的垃圾邮件过滤器。