启用OpenSSL但无法找到包装器" ssl"

时间:2017-01-23 09:46:56

标签: php email ssl

我们已经迁移了一个网站,我们在通过PHP的功能邮件(托管在同一服务器中)向电子邮件地址的某些域发送电子邮件时发现了此错误:

  

无法发送电子邮件:file_exists():无法找到包装器   " SSL" - 你在配置PHP时忘了启用它吗?

另一方面,电子邮件已成功发送到其他域名,例如gmail.com或hotmail.com。

已启用OpenSSL allow_url_fopen已启用

作为发件人,我们使用 sendmail ,但似乎未正确配置。我们已经将发件人的域名添加到/ etc / mail / local-host-names并添加了

define('MAIL_HUB','ourdomain.com.')dnl
define('LOCAL_RELAY','ourdomain.com.')dnl

在/etc/mail/sendmail.mc底部( sendmailconfig 服务sendmail重启修改后执行)

环境:

  • PHP 5.6.29-0deb8u1 over fastcgi
  • OpenSSL 1.0.1k
  • Apache 2.4.10
  • Sendmail 8.14.4

提前致谢。

1 个答案:

答案 0 :(得分:0)

我发现了这个问题。邮件服务器与网站服务器不同,sendmail尝试将电子邮件直接发送到网站服务器。

我只是将这些行添加到 /etc/mail/sendmail.mc

的末尾
define(`MAIL_HUB',`website.server.com.')dnl
define(`LOCAL_RELAY',`website.server.com.')dnl
define(`confDOMAIN_NAME',`mail.server.com')dnl

并运行这些命令

m4 sendmail.mc > sendmail.cf

service sendmail restart