当我运行 php 测试脚本尝试使用curl 和我的 Macports php 安装通过 https 连接到 Rackspace API 时,我得到一个unsupported protocol
错误(curl verbose 设置为 true)。见下文:
AndyMac:test Andy$ which php
/opt/local/bin/php
AndyMac:test Andy$ php test.php
* About to connect() to lon.auth.api.rackspacecloud.com port 443 (#0)
* Trying 212.64.148.13...
* connected
* Connected to lon.auth.api.rackspacecloud.com (212.64.148.13) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: /opt/local/share/curl/curl-ca-bundle.crt
CApath: none
* error:14077102:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocol
* Closing connection #0
AndyMac:test Andy$
AndyMac:test Andy$ php -i | grep -i ssl
/opt/local/var/db/php5/openssl.ini,
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
SSL => Yes
SSL Version => OpenSSL/1.0.1
SSL => supported
openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.1 14 Mar 2012
OpenSSL Header Version => OpenSSL 1.0.0d 8 Feb 2011
OpenSSL support => enabled
AndyMac:test Andy$
如您所见,php 是使用 ssl 支持编译的。如果我在 Mac 上使用默认安装的 php 运行测试脚本,那么它可以工作,因此 php Macports 安装似乎有问题。另外,如果我使用curl 和 Macports php 安装获得其他 https url,我似乎能够得到响应。
有什么建议么?
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)