首页 > 解决方案 > 如何在 laravel 中的域电子邮件上设置 smtp 连接

问题描述

我有一个域:www.mydomain.ro,我创建了这样的电子邮件:office@mydomain.ro

我正在尝试从我的 laravel 应用程序(laravel 5.7)发送电子邮件,我做了以下配置:

在 .env 文件中:

    MAIL_DRIVER=smtp
    MAIL_HOST=office@my-domain.ro
    MAIL_PORT=26
    MAIL_USERNAME=office@my-domain.ro
    MAIL_PASSWORD=mypassword
    MAIL_ENCRYPTION=null

在 config/mail.php 中:

<?php

return [

    'driver' => env('MAIL_DRIVER', 'smtp'),

    'host' => env('MAIL_HOST', 'mail.my-domain.ro '),

    'port' => env('MAIL_PORT', 26),

    'from' => [
        'address' => env('MAIL_FROM_ADDRESS', 'office@muy-domain.ro'),
        'name' => env('MAIL_FROM_NAME', 'Office my-domain'),
    ],

    'encryption' => env('MAIL_ENCRYPTION', 'tls'),

    'username' => env('office@my-domain.ro'),

    'password' => env('mypassword'),

    'sendmail' => '/usr/sbin/sendmail -bs',

    'markdown' => [
        'theme' => 'default',

        'paths' => [
            resource_path('views/vendor/mail'),
        ],
    ],

];

在控制器中我这样做:

$data = array(
    'name' => 'Ioan Andrei',
    'body' => 'Test Email'
);


Mail::send('emails.demandreceived',$data,function ($message){
    $message->from('office@my-domain.ro','TEST');
    $message->to('ioan.andrei97@gmail.com');
    $message->subject('Test email');

我收到此错误:

Connection could not be established with host office@msipremiumcars.ro [php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known #0]

我做错了什么?它不起作用,因为我试图从我的本地服务器发送它们?

例如,我可以使用 mailgun 发送电子邮件并且仍然从 office@mydomain.ro 发送电子邮件吗?

我尝试在配置后重新启动本地服务器。

Laravel 版本:5.7

标签: emaillaravel-5smtp

解决方案


问题是MAIL_HOST.env文件中。它需要是主机名,my-domain.ro而不是您当前输入的电子邮件地址office@my-domain.ro


推荐阅读