2017-01-09 131 views
1

我们正在尝试向新成员发送自动回复电子邮件。我们在同一台服务器上的其他站点上使用相同的配置,没有任何问题。在发送返回以下错误的电子邮件:stream_socket_enable_crypto():对等证书CN =`cs723.mojohost.com'与预期的CN不匹配='smtp.sendgrid.net'

stream_socket_enable_crypto():同等证书CN = cs723.mojohost.com不匹配,期望CN = smtp.sendgrid.net

https://gyazo.com/ffb0cb7645d51ed21ecc863f1e3196b2

我们使用Laravel与连接到: smtp.sendgrid.net 端口 - 587 使用TLS的描述

我们已经尝试没有成功如下:

此外,我们无法通过PUTTY进行连接。我们验证了MojoHost的SSH权限是正确的。

我读过不同的职位,

这样做的正确的解决办法是有一个很好的更换失效,错误配置或自签名证书。

试图没有成功。希望有人能提供一些有用的见解。现在要在一个星期的努力来解决这个....

谢谢, 迈克

回答

0

在\配置/ mail.php除去 'TLS' 试用的伸出,收藏加密如果要使用非SSL设置

'加密'=> ENV( 'MAIL_ENCRYPTION', ''),

+0

我们试过已经与没有成功。我们已经离开了SendGrid。 –

2

在该方法createSmtpDriver从

\厂商\ laravel \框架\ SRC \照亮\邮件\ TransportManager.php

它提取从

密钥流\配置\邮件。PHP

稍后用作定制选项的stream_context_create方法内

\厂商\ swiftmailer \ swiftmailer \ lib中\类\夫特\运输\ StreamBuffer.php。

所以设置verify_peer,verify_peer_name和allow_self_signed解决由OP提到的错误的按键,你可以添加以下到\ CONFIG \ mail.php:

'stream' => [ 
    'ssl' => [ 
     'verify_peer' => false, 
     'verify_peer_name' => false, 
     'allow_self_signed' => true, 
    ], 
], 
相关问题