使用PHP Swiftmailer时,如何解决错误554 5.5.1(没有有效的收件人)? - php

在测试我们的邮件服务器时,我们偶然发现了一个错误,该错误阻止了我们通过PHP发送邮件,尽管每个邮箱中的常规发送/接收工作都没有问题。
我们正在运行一个单独的Ubuntu 18.04服务器,该服务器仅具有Mail-in-a-box,且所有必需组件都在运行。

在error.log文本文件中输出

PHP致命错误:未捕获的Swift_TransportException:预期响应
代码354,但得到的代码为“ 554”,并显示消息“ 554 5.5.1”错误:无效
收件人\ r \ n“

PHP文件

$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]')
    ->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]'])
    ->setBody('E-Mail: ' . $request_email . $request_text)
    ->setContentType("text/html");

$result = $mailer->send($message);

我们尝试的是重新安装所有Mail-in-a-box和所有组件,并检查所有内容是否存在拼写错误。收件人确实存在于我们的邮件服务器上,并且可以通过客户端手动接收和发送邮件。

参考方案

我已经将这2行添加到laravel(.env文件)中,解决了此错误(554):

[email protected]
MAIL_FROM_NAME="[email protected]"

在此之后运行此命令以刷新邮件缓存配置:

php artisan config:cache

PHP-全局变量的性能和内存问题 - php

假设情况:我在php中运行一个复杂的站点,并且我使用了很多全局变量。我可以将变量存储在现有的全局范围内,例如$_REQUEST['userInfo'],$_REQUEST['foo']和$_REQUEST['bar']等,然后将许多不同的内容放入请求范围内(这将是适当的用法,因为这些数据指的是要求自…

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…

php-casperjs获取内部文本 - php

我正在为casperjs使用php包装器-https://github.com/alwex/php-casperjs我正在网上自动化一些重复的工作,我需要访问一个项目的innerText,但是我尚不清楚如何从casperjs浏览器访问dom。我认为在js中我会var arr = document.querySelector('label.input…

如何确认Firebase通知实际上已发送(fcm)? - php

我允许用户通过我的网站发送通知。通知正在工作,但是,我想一种方法来实际确认通知是否已发送(以代码形式),或者至少无法确认curl是否有效,因此我可以在网站上显示一条消息,指出它成功还是失败。在我的jquery帖子请求中,即使我在PHP中提供了无效的API_ACCESS_KEY,状态也似乎始终为“成功”(因此,显然它没有发送通知,但仍在说成功)。如何确定通知已…

php:拆分字符串,直到第一次出现数字 - php

我有像cream 100G sup 5mg Children 我想在第一次出现数字之前将其拆分。所以结果应该是array( array('cream','100G'), array('sup','5mg Children') ); 可以告诉我如何为此创建图案吗?我试过了list(…