这是我第一次在这里发帖,因此,如果任何内容(或所有内容)有不妥之处,我深表歉意。
基本上,我有一个 Wordpress 网站,托管在运行 Ubuntu 15.04、MariaDB、nginx 的 VPS 上。我安装了 postfix,实际上我只安装了与电子邮件相关的设置,这样我就可以发送用户注册的激活信。
我将 mail.mydomain.com 设置为 MX 条目,安装了 postfix 并对其进行了配置,编辑了 php.ini 文件以反映 postfix。所以现在我可以使用终端发送电子邮件,/usr/sbin/sendmail -t
但如果我尝试在 Wordpress 中发送某些内容,例如尝试注册,我会在 mail.log 中找到以下内容:
fatal: Recipient addresses must be specified on the command line or via the -t option
我尝试在线研究这个问题,发现大多数答案都指出 php.ini 文件中的 sendmail 路径不正确。
sendmail_path = /usr/sbin/sendmail -t -i
这是从我的php.ini
文件中以及我能找到的所有内容中得出的,这就是它的设置方式。
感谢所有能够提供帮助的人,我对尝试管理自己的服务器与采用托管解决方案还很陌生,因此如果这个问题不合适或很愚蠢,我深表歉意。
答案1
我设法解决了类似的错误,所以也许这对某些人有帮助。查看此链接以获取我非常相似的手册博客。
检查日志文件中的错误。sudo tail -n10 /var/log/mail.log
- 搜索 ”致命:收件人地址“
- 如果您看到此错误,那么本手册可能会对您有所帮助。
打开php.ini用于在服务器上编辑。
- 确保您编辑了正确的 php.ini!!
检查 smtp 是否被取消注释:
[mail function] SMTP = localhost smtp_port = 25
打开编辑文件:/etc/postfix/main.cf
在 Relayhost 部分,添加您的 MS Exchange 服务器名称: 中继主机 = exchange.domain.lv
将 www-data 用户添加到邮件组: sudo adduser www-数据邮件
检查 /etc/hosts 是否有正确的值。
- 例如您的服务器名称。
重新启动 apache2、php5-fpm