【问题标题】:PHP: cannot send sms, but can send regular old emailPHP:无法发送短信,但可以发送常规的旧电子邮件
【发布时间】:2011-06-23 07:46:05
【问题描述】:

我正在尝试使用 php 从我的服务器向我的手机发送短信。我最近将服务器配置为发送电子邮件,它确实如此(已验证)。但是,它进入了我的垃圾邮件箱。当我尝试通过短信发送消息时,我没有收到任何信息。

这是我正在使用的脚本:

$to = "myemailaddress@gmail.com";
$subject = "testing";
$body = "";
$headers = 'From: testemailaddress@gmail.com';

if (mail($to, $subject, $body, $headers)) {
    echo("<p>Message successfully sent!</p>"); 
} else {
    echo("<p>Message delivery failed...</p>");
}

我用于发送短信的地址是“收件人”字段中的 myphonenumber@txt.att.net。

我要冒昧地说这是一个身份验证问题,也许。

还有什么我需要进一步配置的吗? (即 php.ini)

【问题讨论】:

  • 您可以使用常规电子邮件客户端向该地址发送短信吗? email to txt 网关有多种工作方式,您应该查看主机的文档。
  • 前段时间遇到了同样的问题。它很可能会进入您的垃圾邮件箱,因为您将 From: 设置为 ..@gmail.com,而您的发送服务器类似于 localhost。尝试将 From: 设置为 noreply@yourdomain 并设置一个额外的“Reply-To:whatever@gmail.com”

标签: php email sms


【解决方案1】:

当今大多数电子邮件提供商/服务器严重依赖垃圾邮件过滤/dnsbl。您的网络服务器不是已知邮件服务器,并且您可能没有设置 SPF 或任何东西。

避免所有这些问题的方法是使用 Google Mail 地址(或任何其他提供商)。而不是 PHP 邮件函数,而是使用更复杂的东西,例如 Swiftmailer,它生成的邮件标头不太常被自动分类为垃圾邮件。

另见:Using php's swiftmailer with gmail

【讨论】:

  • 这就是我认为正在发生的事情。只要我可以通过 gmail 路由它,这没什么大不了的。首先,我会试试 Swiftmailer。
  • 我尝试了 swiftmailer,但无法正常工作。然后,在尝试删除 /var/www/lib/ 文件夹后,我不小心删除了 /lib 文件夹,不得不重新安装整个服务器。
  • 很抱歉。如果 Swiftmailer 不那么容易工作(这是配置问题),那么试试 PEAR Mail。这具有类似的功能。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-30
  • 2011-02-01
  • 1970-01-01
  • 2013-09-04
  • 2012-08-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多