当我添加.com.sg而不仅仅是.com时,PHP邮件功能无法发送电子邮件

时间:2012-06-29 01:53:07

标签: php function email

我想发送一个链接供用户注册后验证他们的帐户。但是当我在www.singapore.com处使用$message时,我能够收到该电子邮件,但当我将其更改回www.singapore.com.sg时,我无法收到该电子邮件。我想知道是因为链接还是我的代码中有错误?请帮帮我。

$domain ='www.singapore.com'; 
$id = mysql_insert_id(); 
$to = 'myemail@gmail.com'; 
$subject = "E-mail Verification"; 
$message = 'Click on the link to verify your account: http://'.$domain.'/rates/activation.php?id='.$id.' '; 
$headers = "From: <Singapore> \r\n"; 
mail($to,$subject,$message,$headers, '-f enquiry@singapore.com.sg'); 

2 个答案:

答案 0 :(得分:0)

您需要-f信封选项吗?如果内存服务,则需要在sendmail配置中将任何放入其中的地址添加为可信用户。

我在PHP邮件文档中找到了这个:

  

应将Web服务器运行的用户添加为受信任的用户   到sendmail配置,以防止'X-Warning'标头   使用时设置信封发件人(-f)时添加到邮件中   这种方法。对于sendmail用户,此文件是/ etc / mail / trusted-users。

您是否只是尝试设置地址的回复?如果是这样,请使用$ header,不要使用其他参数。

$headers = “From: enquiry@singapore.com.sg” . “\r\n” . “Reply-To: enquiry@singapore.com.sg”;

答案 1 :(得分:0)

您的代码有问题。将其更改为此

$message = 'Click on the link to verify your account: http://'.$domain.'/rates/activation.php?id='.$id;

最后有额外的引号。

希望有帮助......:)