【发布时间】:2017-04-22 04:26:10
【问题描述】:
有人可以向我解释 SSL 和 STARTTLS 如何与 PHP 一起工作吗?
我有一个带有 Postfix 和 Dovecot 的专用服务器(由 plesk 管理)。我没有 SSL。
为了获取和发送我的电子邮件,我使用带有 STARTTLS 的 SMTP/IMAP。
但是在 PHP 中,使用 Swiftmailer 和 Symfony,我只有两个选择:ssl 或 tls。 在我的情况下,这两个都不起作用,电子邮件不会离开。
在stackoverflow上搜索,我把它放在我的代码中并且这个工作:
$transport = \Swift_SmtpTransport::newInstance('smtp.server.fr', 587, 'tls')
->setUsername($username)
->setPassword($password)
->setStreamOptions(array('ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)));
$mailer = \Swift_Mailer::newInstance($transport);
你认为我的配置正确吗?
【问题讨论】:
-
我认为是正确的,尝试将您的配置导出到 Ressource 并使用 YamlParser 解析它们。 @在此处查看 START TLS 和 SSL / TLS 之间的区别:stackoverflow.com/questions/5540374/starttls-vs-ssl-tls
标签: php symfony swiftmailer starttls