【问题标题】:PHP: send html email from microsoft exchange server 2007PHP:从 microsoft exchange server 2007 发送 html 电子邮件
【发布时间】:2011-05-03 08:15:25
【问题描述】:

我无法使用基本的 php 邮件功能向我的域外发送电子邮件。当我想向 yahoo 或 gmail 或我的域外发送电子邮件时显示错误。错误是:警告:mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay in C:\-----\email.php on line 6。我的代码如下。

 $to = "testabc@gmail.com";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";
 if (mail($to, $subject, $body)) {
   echo("<p>Message successfully sent!</p>");
  } else {
   echo("<p>Message delivery failed...</p>");
  }

我的电子邮件服务器是 Microsoft Exchange Server 2007。 他们是否有任何完善的 php 类或代码可用于发送电子邮件。

请帮忙

【问题讨论】:

    标签: php exchange-server-2007


    【解决方案1】:

    这是服务器配置问题,与您发送电子邮件的方式无关。显然不允许中继,因此您无法将邮件发送到外部电子邮件地址。因此,要么将“收件人”地址更改为允许的地址,使用另一台 SMTP 服务器发送邮件,要么更改当前的配置。

    【讨论】:

    • 基本上。大多数电子邮件服务器不允许中继。所以,在我的邮件服务器上不允许 SMTP 中继是不可能的。他们有什么方法可以在不更改邮件的情况下做到这一点服务器配置??谢谢回复...
    • 所有选项都在那里,如果您不想更改配置,那么您将不得不使用另一个邮件服务器。如果您的 ISP 的邮件服务器不需要 SMTP 身份验证,它应该是好的(否则您将不得不使用 PHP 邮件库,因为在基本的 PHP 邮件功能中不支持 SMTP 身份验证)。
    【解决方案2】:

    您是否尝试过使用像 swift 这样的电子邮件库? http://swiftmailer.org/

    【讨论】:

    • 谢谢。但是他们有很多文件。他们有什么单一的班级可以做到吗?
    • 您只需require_once '/path/to/swift-mailer/lib/swift_required.php'; 其余文件将通过 spl_autoloader 自动加载
    • -1:问题在于 MTA 配置 - 切换电子邮件抽象层不会产生影响。
    猜你喜欢
    • 2013-11-12
    • 2013-06-05
    • 1970-01-01
    • 2016-12-28
    • 2012-08-27
    • 2011-03-04
    • 1970-01-01
    • 2018-01-10
    相关资源
    最近更新 更多