我已将运行版本为4.9.8的Wordpress服务器从Ubuntu迁移到CentOS,但来自WordPress的电子邮件似乎无法正确发送。我正在通过创建与各种电子邮件地址相关联的新用户来测试发送电子邮件。
我安装了Postfix,并进行了配置,使其与原始配置尽可能匹配。我这样说是因为在实现Postfix方面存在一些细微差别。
我能够通过命令行和托管在与WordPress相同服务器(php-fpm)上的PHP脚本向各种地址发送电子邮件。
然而,当我尝试通过在wp-admin中创建新用户向WordPress中相同的地址发送电子邮件时,它们无法到达收件人。我已检查了WordPress配置文件,并且没有看到任何覆盖默认邮件操作的内容。当通过我的PHP脚本触发电子邮件时,/var/log/maillog中没有新条目:
我安装了Postfix,并进行了配置,使其与原始配置尽可能匹配。我这样说是因为在实现Postfix方面存在一些细微差别。
我能够通过命令行和托管在与WordPress相同服务器(php-fpm)上的PHP脚本向各种地址发送电子邮件。
然而,当我尝试通过在wp-admin中创建新用户向WordPress中相同的地址发送电子邮件时,它们无法到达收件人。我已检查了WordPress配置文件,并且没有看到任何覆盖默认邮件操作的内容。当通过我的PHP脚本触发电子邮件时,/var/log/maillog中没有新条目:
<?php
// the message
$msg = "First line of text\nSecond line of text";
// use wordwrap() if lines are longer than 70 characters
$msg = wordwrap($msg,70);
// send email
mail("me@{mydomain}","My subject",$msg);
?>
在从WordPress触发电子邮件后,也没有任何条目。
编辑:我打开了调试记录文件,并添加了一个捕获wp_mail错误的函数。当尝试时,我看到的错误是:
(
[wp_mail_failed] => Array
(
[0] => Invalid address: (setFrom) wordpress@{mydomain}
)
)
发件人电子邮件地址与原始服务器中的相同。
编辑2:
我已经在functions.php中添加了一些自定义代码以设置发件人,并尝试了几个不同的发件人电子邮件地址 - 这些地址都是有效的电子邮件地址。所有这些都会出现“无效地址”的错误。奇怪的是,PHP的邮件函数将电子邮件发送为wordpress@ {mydomain},而这可以正常工作。