【发布时间】:2016-02-03 00:34:42
【问题描述】:
我有一个在 Ubuntu 14.04 上运行的 VPS。 Apache、MySQL 和 PHP 已安装并正常工作。
服务器用于托管具有联系表的网站。 联系表单从用户那里获取一些变量,例如他们的电子邮件、主题和正文(使用 POST)。 然后使用 PHP 的标准 mail() 函数处理此消息。
嗯,这在我的旧托管服务提供商上运行良好,但在这个“自制”服务器上就不行了。
我尝试配置 Sendmail 并将其路径添加到 php.ini,但没有成功。 我还尝试使用库 PHPMailer 希望使用外部 SMTP 服务器而无需配置本地服务器。 这很好用(PHPMailer 实际上很棒),只要发件人的身份与通过 SMTP 服务器验证的用户的身份相同......在这种发件人总是不同的形式的情况下,这永远不会发生。
一些看似简单的事情现在变得令人头疼。 问题是......我如何让表单工作,而无需设置任何本地邮件服务器,也没有限制只能从一个特定的电子邮件地址发送电子邮件?
提前非常感谢!
【问题讨论】:
-
所以安装一个邮件服务器
-
您不应该将表单提交者用作发件人或发件人地址。它只会导致 SPF 失败。使用您自己的地址作为发件人地址,并在回复中填写提交者的地址。
-
@Synchro 非常感谢您提供的信息!我认为表单提交者的电子邮件应该是“$mail->setFrom”。这实际上可能是我一直在寻找的解决方案。
-
@Synchro 它运行良好并解决了我的问题。再次感谢。
标签: php email ubuntu-14.04 phpmailer sendmail