我试图在用户注册后从我的laravel应用发送电子邮件,但是在网络标签中,它一直给我这个错误,
"message": "Connection could not be established with host mail.i-scbank.com [ #0]
该应用托管在共享托管(面板)中
我尝试使用mailtrap并成功了,但是当我在邮件服务器上尝试该错误消息时,我什至创建了一个新的电子邮件帐户,但仍然无法正常工作,
这是我的.env代码
MAIL_DRIVER=smtp
MAIL_HOST=mail.eloike.com
MAIL_PORT=587
MAIL_USERNAME=info@eloike.com
MAIL_PASSWORD=*****
MAIL_FROM_ADDRESS=info@eloike.com
MAIL_ENCRYPTION=tls
MAIL_FROM_NAME="Stones"
这是我的config / mail.php代码
<?php
return [
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'sendmail' => '/usr/sbin/sendmail -bs',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
请问我在做什么错,我该如何发送电子邮件
答案 0 :(得分:0)
您必须将mail.eloike.com
更改为stmp.eloike.com
答案 1 :(得分:0)
端口可能已被防火墙阻止,或者访问受到限制。
您可以执行端口映射以检查:
nmap -p 587 -T4 -v -Pn mail.eloike.com
[...]
PORT STATE SERVICE
587/tcp filtered submission
已过滤意味着nmap并不真正知道端口状态是什么,因为某些东西正在过滤流量。
您也可以尝试以openssl作为客户端进行连接:
openssl s_client -connect mail.eloike.com:587
我有这个输出:
connect:errno=11
这意味着连接被拒绝。
有关更多信息,您必须与您的提供商联系,或更改邮件!!
答案 2 :(得分:0)
SMTP端口587是STARTTLS端口,而不是TLS。这意味着:
尝试立即建立加密连接将失败,例如:
$ openssl s_client -4 -host mail.eloike.com -port 587
CONNECTED(00000003)
140052717310400:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../ssl/record/ssl3_record.c:252:
# ...
尝试建立使用STARTTLS升级的未加密连接将成功,例如:
$ openssl s_client -4 -host mail.eloike.com -port 587 -starttls smtp
CONNECTED(00000003)
# ...
250 HELP
您需要在cPanel上阅读以了解它是否可以支持传出的STARTTLS连接(我知道它可以支持传入的连接)。