在测试我们的邮件服务器时,我们偶然发现了一个错误,该错误阻止我们通过 PHP 发送邮件,尽管每个 Mail-in-a-box 的常规发送/接收工作没有任何问题。
我们正在运行一个单独的 Ubuntu 18.04 服务器,该服务器仅运行 Mail-in-a-box 及其所有所需组件。
error.log 文本文件中的输出
PHP 致命错误:未捕获 Swift_TransportException:预期响应
代码 354 但得到代码“554”,并显示消息“554 5.5.1 错误:无效
收件人\r\n"
PHP file
$request_email = $_POST['request-email'];
$request_name = $_POST['request-name'];
$request_text = $_POST['request-text'];
$transport = (new Swift_SmtpTransport('data.abc.xy', 587, 'tls'))
->setUsername('[email protected] /cdn-cgi/l/email-protection')
->setPassword('*******')
->setStreamOptions(array('ssl' => array('allow_self_signed' => true, 'verify_peer' => false)));
$mailer = (new Swift_Mailer($transport));
$message = (new Swift_Message('Name: '. $request_name))
->setFrom(['' . $request_email => '' . $request_name])
->setTo(['[email protected] /cdn-cgi/l/email-protection'])
->setBody('E-Mail: ' . $request_email . $request_text)
->setContentType("text/html");
$result = $mailer->send($message);
我们尝试的是重新安装所有 Mail-in-a-box 和所有组件,并检查所有内容是否有拼写错误。收件人确实存在于我们的邮件服务器上,可以通过客户端手动接收和发送邮件。
我已经解决了这个错误(554),只需将这两行添加到 laravel (.env 文件):
MAIL_FROM[email protected] /cdn-cgi/l/email-protection
MAIL_FROM_NAME="[email protected] /cdn-cgi/l/email-protection"
最后,运行以下命令来刷新邮件缓存配置:
php artisan config:cache
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)