Php Zend无法通过代理连接到HTTPS服务器

Php Zend无法通过代理连接到HTTPS服务器,php,zend-framework,proxy,Php,Zend Framework,Proxy,我使用的是Zend Framework 1.*执行“stream\u socket\u enable\u crypto”时总是返回false。Zend引发异常此异常: "Unable to connect to HTTPS server through proxy could not negotiate secure connection." 我在前面的方法“stream\u socket\u enable\u crypto”中尝试了以下所有加密类型,结果相同 STREAM_CRYPTO_M

我使用的是Zend Framework 1.*执行“stream\u socket\u enable\u crypto”时总是返回false。Zend引发异常此异常:

"Unable to connect to HTTPS server through proxy could not negotiate secure connection." 
我在前面的方法“stream\u socket\u enable\u crypto”中尝试了以下所有加密类型,结果相同

STREAM_CRYPTO_METHOD_SSLv2_CLIENT
STREAM_CRYPTO_METHOD_SSLv3_CLIENT
STREAM_CRYPTO_METHOD_SSLv23_CLIENT
STREAM_CRYPTO_METHOD_TLS_CLIENT
STREAM_CRYPTO_METHOD_SSLv2_SERVER
STREAM_CRYPTO_METHOD_SSLv3_SERVER
STREAM_CRYPTO_METHOD_SSLv23_SERVER
STREAM_CRYPTO_METHOD_TLS_SERVER
深入研究我看到的“connectHandshake”Zend方法,我可以连接到代理,但不能通过代理连接到服务器。我被这个问题困扰了很长时间,有什么线索吗


PHP版本5.6.*

最终意识到的是PHP版本的问题。“验证对等名称”默认值更改为TRUE。请参阅更改日志

将此属性设置为false解决了连接问题

    $adapter->setStreamContext(array(
            'socket' => array(
                // Bind local socket side to a specific interface
                'bindto'            => self::PROXY_HOST . ':' . self::PROXY_PORT
            ),
            'ssl' => array(
                'crypto_method'     => STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT,
                // Verify server side certificate,
                'verify_peer'       => false,
                'verify_peer_name'  => false,
                'allow_self_signed' => false,
            )
        )                
    );

希望它能帮助别人

它帮助了我!非常感谢。