0

我正在尝试通过 PHP 脚本发送电子邮件。这是应该发送电子邮件的代码行:

mail($owner_email, $subject, $messageBody, $headers)

以下是我的变量设置:

$owner_email=mike@mikemarks.net

$subject=“废话”

$messageBody=“废话”

电子邮件地址mike@mikemarks.net是在 Microsoft 的电子邮件服务器上配置的。我从他们的服务器发送和接收电子邮件 - smtp.live.com(用于传出)。出于某种原因,上面的代码行没有向mike@mikemarks.net.

问题

  1. 是否有某些电子邮件服务不能与 PHP 的电子邮件功能一起使用,例如 Microsoft 的?
  2. 我知道我无法在 PHP 中设置 SMTP 设置 - 这是否意味着 PHP 使用自己的 SMTP 服务器?
4

2 回答 2

1

不,PHP 没有自己的 smtp 服务器。它要么使用系统默认系统(unix-ish 系统),要么使用通过 smtp_* .ini 指令配置的系统(Windows)。

如果您在一个 unixish 主机上并且想要使用外部 SMTP 服务器,那么您将不得不使用一个真正的库,例如 phpmailer 或 swiftmailer,来直接连接到外部服务器。或者,您将本地 smtp 服务器配置为仅转发服务器,将任何本地发送的电子邮件直接传递给外部电子邮件。

于 2013-07-31T16:09:54.037 回答
1

PHP 使用 php.ini 中指定的 SMTP 服务器。大多数情况下,它是 localhost,它使用托管服务器自己的 SMTP 服务器。检查邮件功能的响应(真/假)以确保电子邮件正在通过,并检查服务器的邮件日志以查看是否有错误。您可以查看http://www.phpclasses.org/blog/package/9/post/1-Sending-email-using-SMTP-servers-of-Gmail-Hotmail-or-Yahoo-with-PHP.html获取信息如何使用 Hotmail 作为 SMTP 服务器。

于 2013-07-31T16:03:19.557 回答