Header umgeschrieben in: Symfony\Component\Mailer\Exception\TransportException: Antwortcode „250' erwartet, aber eine leere Antwort erhalten
P粉350036783
P粉350036783 2023-11-03 21:58:49
0
1
745

Ich verwende den Google Workspace SMTP-Relay-Dienst, um E-Mails von meiner Laravel-App zu senden. Es läuft seit über einem Jahr einwandfrei, aber ich bin mir nicht sicher, was genau es daran hindert, zu laufen. Wenn ich versuche, eine E-Mail zu senden, erhalte ich die folgende Fehlermeldung:

>>> IlluminateSupportFacadesMail::to('myemail@gmail.com')->send(new AppMailCourseEnrolmentEmail($user, AppCourse::first()));

// The error
SymfonyComponentMailerExceptionTransportException with message 'Expected response code "250" but got an empty response.'

Ich vermute, dass dies damit zusammenhängt, dass ich von Laravel 8 auf Laravel 9 aktualisiere, bin mir aber nicht sicher, wie ich das Problem beheben kann.

Meinmail.php

'smtp' => [
            'transport' => 'smtp',
            'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
            'port' => env('MAIL_PORT', 587),
            'encryption' => env('MAIL_ENCRYPTION', 'tls'),
            'username' => env('MAIL_USERNAME'),
            'password' => env('MAIL_PASSWORD'),
            'timeout' => null,
        ],

Meine E-Mail-Konfiguration

MAIL_DRIVER=smtp
MAIL_HOST=smtp-relay.gmail.com
MAIL_PORT=587
MAIL_ENCRYPTION=TLS
MAIL_FROM_NAME="My Name"
MAIL_FROM_ADDRESS=myaddress@workspace.com

Ich authentifiziere mich über IP, sodass keine Felder für Passwort und Benutzername erforderlich sind

Meine GSuite-Gmail-Routing-Konfiguration


HINWEIS In der obigen Konfiguration habe ich versucht, TLS zu überprüfen und die zulässigen Absender auf „Nur registrierte Anwendungsbenutzer in meiner Domäne“ zu ändern, aber das Problem besteht weiterhin.

Ich habe den Rat von

ausprobiert
  1. https://laracasts.com/discuss/channels/laravel/laravel-swift-mailer-Exception-expected-response-code-250-but-got-an-empty-response-using-gmail-SMTP-Relay-Datenbankwarteschlange Fahrer

  2. Laravel 9 – Infomaniak: Antwortcode „250“ erwartet, aber Code „550“ mit der Meldung „550 5.7.1 Sender Mismatch“ erhalten

  3. https://stackoverflow.com/a/43283422/11752623

  4. https://www.cubebackup.com/blog/how-to-use-google-smtp-service-to-send-emails-for-free/ Methode 3

All dies war erfolglos. Vielen Dank für Ihre Hilfe bei der Lösung dieses Problems.

P粉350036783
P粉350036783

Antworte allen(1)
P粉221046425

找到了解决办法, 我在assertResponseCode方法下访问了vendor/symfony/mailer/Transport/Smtp/SmtpTransport.php。我回应了显示以下内容的回复:

421 4.7.0 Try again later, closing connection. (EHLO) r29-200a50c01d0000xxxxxxxxxxxx87edb.28 - gsmtp

有关该错误的更多详细信息,请参阅 Google 文档

问题在于 Swift Mailer 使用 127.0.0.1 作为发送 Gmail 未知邮件的域。

因此,解决方案是在 config/mail.php 文件中设置我的域名

        'smtp' => [
            'transport' => 'smtp',
            'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
            'port' => env('MAIL_PORT', 587),
            'encryption' => env('MAIL_ENCRYPTION', 'tls'),
            'username' => env('MAIL_USERNAME'),
            'password' => env('MAIL_PASSWORD'),
            'timeout' => null,
            'local_domain' => env('MAIL_EHLO_DOMAIN', 'mydomain.com')//this line here
        ],

更多信息:

  1. https://insights.rytass.com/gmail-smtp-relay-421-4-7-0-try-again-later- opening-connection-ehlo-cfcdac3cf9c7
  2. https://serverfault .com/questions/929559/postfix-error-421-4-7-0-try-again-later- opening-connection-ehlo
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage