首页 > 解决方案 > 将 php 邮件功能与 2 个不同的 smtp 服务器一起使用

问题描述

我有一个使用邮件功能发送电子邮件的 PHP 应用程序。作为 sendmail 应用程序,我使用 MSMTP。所以问题是我需要在一个收件箱中使用第一个 SMTP 服务器发送邮件,并使用第二个 SMTP 服务器发送到另一个收件箱。例如:如果邮件应该使用 Gmail SMTP 服务器发送到 Gmail。如果邮件应该发送到另一个 SMTP 服务器的收件箱,它将使用我的 SMTP 服务器。

我考虑过使用 bash 脚本来使用具有不同配置的 MSMTP,这取决于“To”字符串。但我不太确定如何做到这一点。

标签: phpbashemailsmtp

解决方案


我制作了一个 bash 脚本。我确信它可以更好,但至少它有效。这应该设置为 sendmail_path。

#!/bin/bash
read -r recipient
if [[ $recipient = *'@newcbl.ru' ]]; then
  echo -e $recipient"\n""$(</dev/stdin)" | msmtp -tC /etc/msmtprc_cbl
else
  echo -e $recipient"\n""$(</dev/stdin)" | msmtp -t
fi

推荐阅读