【问题标题】:PHP Warning: stream_socket_client(): Failed to enable crypto?PHP 警告:stream_socket_client():无法启用加密?
【发布时间】:2011-09-23 16:30:16
【问题描述】:

我正在使用 swiftMailer 直接使用 SMTP 发送电子邮件。

我收到这个奇怪的错误:

2011/09/23 17:59:01 [error] 489#0: *1032 FastCGI sent in stderr: "PHP Warning:  stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:
error:140770FC:SSL routines:func(119):reason(252) in /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php on line 271
PHP Warning:  stream_socket_client(): Failed to enable crypto in /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php on line 271
PHP Warning:  stream_socket_client(): unable to connect to ssl://mail.xxxxx.net:587 (Unknown error) in /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php on line 271
PHP Fatal error:  Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host mail.xxxxxxxx.net [ #0]' in /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php:273
Stack trace:
#0 /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php(66): Swift_Transport_StreamBuffer->_establishSocketConnection()
#1 /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(116): Swift_Transport_StreamBuffer->initialize(Array)
#2 /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Mailer.php(79): Swift_Transport_AbstractSmtpTransport->start()
#3 /home/nginx/websites/example.com/www/email.php(23): Swift_Mailer->send(Object(Swift_Message))
#4 {main}
  thrown in /home/nginx/websites/example.com/www/inc/lib/swift-mailer/lib/classes/Swift/Transport/StreamBuffer.php on line 273" while reading response header from upstream, client: xx.xx.xx.xxx, server: example.com, request: "GET /email.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.example.com"

这是什么意思? 谢谢

【问题讨论】:

  • 您的邮件服务器是否接受端口 587 连接?
  • 当然,我的 Thunderbird 使用的是 587
  • 它是 PHP 错误吗?我正在使用:带有 Suhosin-Patch (cli) 的 PHP 5.3.5-1ubuntu7.2(构建时间:2011 年 5 月 2 日 23:00:17)
  • 尝试从命令行运行脚本,这将绕过 suhosin 所做的任何锁定。
  • 是的,我用命令行尝试过,我得到了同样的错误。

标签: php


【解决方案1】:

“未能启用加密”意味着它无法保护连接 - 检查以确保您成功通过了证书,并且您的密码设置正确。

【讨论】:

    【解决方案2】:

    就我而言,问题出在我的 mac (OSX Sierra) 上。我将 php 和 cert 上传到我的服务器,运行它,并且通知已发送。

    重复:APNS + PHP "stream_socket_client(): Failed to enable crypto"

    【讨论】:

      【解决方案3】:

      根据我的经验,此错误通常是您尝试联系无效端口。

      试试telnet mail.xxxxx.net 587,如果你没有得到任何关于转义字符的信息,那么它不是正确的端口。

      如果您有访问权限,请检查服务器配置以查看您是否尝试访问未针对 ssl 流公开的端口。再次尝试telnet 命令以探测其他可能的候选端口

      【讨论】:

        猜你喜欢
        • 2015-05-13
        • 1970-01-01
        • 1970-01-01
        • 2021-08-27
        相关资源
        最近更新 更多