【问题标题】:Best way to separate email and frontend server分离电子邮件和前端服务器的最佳方法
【发布时间】:2012-02-21 21:54:49
【问题描述】:

我正在使用 PHP 运行 Apache 服务器。到目前为止,已经使用 PHP 的 mail() 函数从这个 Apache 服务器向用户发送了电子邮件。

为了优化这个结构,我想把邮件部分分开放在一个单独的服务器上(专门运行qmail)。

既然 Apache 服务器不再有任何电子邮件软件,那么让它发送电子邮件的最佳方式是什么(即将电子邮件内容发送到新的邮件服务器)?据我所知,PHP 的mail() 函数不太适合从单独的服务器发送邮件。

谢谢

【问题讨论】:

标签: php email qmail


【解决方案1】:

Swiftmailer 可能是 PHP 最好的邮件框架。你可以用它来做你想做的事。

【讨论】:

    【解决方案2】:

    我建议使用一些包装类来使发送*强调文本*的邮件独立于子系统。

    swiftmailer 例如做得很好。

    【讨论】:

      【解决方案3】:

      您可以使用您选择的语言(可能是 php)创建一个 Web 服务,并定义一个用于发送邮件的确切接口。一个简单的原型是:

      public function sendMail( string from, array to, subject, body, whatnot )
      

      然后您可以通过例如公开该服务PHP 肥皂(如果您使用的是 php)。你真的可以在 web 服务端使用任何技术来发送你的邮件。

      也许您希望该服务返回邮件 ID 或成功状态,以便您知道它是否有效...

      还有一件事:客户端看起来像这样:

      require_once "SOAP/Client.php"; 
      // SOAP/WSDL 
      $sw = new SOAP_WSDL ("http://example.com/mailserver.php?wsdl"); 
      
      // Proxy-Obj. 
      $proxy = $sw->getProxy (); 
      
      // servicemthod 
      $erg = $proxy->sendMail ("me@example.com", array of recps, etc ); 
      
      // return 
      print $erg."\n";
      

      【讨论】:

        【解决方案4】:

        以下是使用 php 中的 SMTP 连接的一个很好的示例: http://www.9lessons.info/2009/10/send-mail-using-smtp-and-php.html

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-05-06
          • 2017-02-07
          • 1970-01-01
          相关资源
          最近更新 更多