起初,我直接用方倍工作室之前做微信接口调用时的http_request函数,发现能正常调用微信api的函数获取不了火星天气数据,
然后又尝试用file_get_contents,仍然不行

一直出的错就是ssl handshake timed out
明白问题一定在ssl上,但怎么解决是个大问题。
百度,google了各种方法都失败。
又尝试了各种ssl的配置,还是失败。

期间还有一个问题就是我自己的环境不行,导致一直没有找到正确的原因。走了很多弯路

后来找到一个网站,可以检测服务器的ssl版本。
网址为 https://www.ssllabs.com/ssltest/
通过检测,mars.nasa.gov 官网支持的ssl协议类型如下

TLS 1.3	No
TLS 1.2 Yes
TLS 1.1 No
TLS 1.0 No
SSL 3 No
SSL 2 No

只支持 TLS 1.2

又查到 其对应的数字是 6

CURL_SSLVERSION_DEFAULT ()
CURL_SSLVERSION_TLSv1 ()
CURL_SSLVERSION_SSLv2 ()
CURL_SSLVERSION_SSLv3 ()
CURL_SSLVERSION_TLSv1_0 ()
CURL_SSLVERSION_TLSv1_1 ()
CURL_SSLVERSION_TLSv1_2 ()

于是配置成 curl_setopt($ch, CURLOPT_SSLVERSION, 6)

在本地环境,新浪云和阿里云上成功了。

php版本5.3也可以,推荐本地的openssl版本太低导致不支持导致。

CURL SSL为6的由来的更多相关文章

  1. 执行curl -sSL 提示curl: (35) SSL connect error

    今天,添加容器节点报错,执行如下 curl -sSL https://shipyard-project.com/deploy| ACTION=node DISCOVERY=etcd://192.168 ...

  2. php下curl ssl常用问题

    1. 查看curl版本 在phpinfo中,可以查看 curl cURL support enabled cURL Information 7.35.0 Age 3 Features AsynchDN ...

  3. Centos curl ssl 替换 NSS 为 OpenSSL

    参考:https://www.latoooo.com/xia_zhe_teng/368.htm 我的系统版本是 Centos 7 64位.为了方便,先安装常用的开发环境. yum groupinsta ...

  4. windows curl ssl版本号编译

    编译curl-ssl版本号碰到非常多坑,这里记录一下.亲手測试,注意版本号号!! ! !. 1.下载  curl-7.43.0  libssh2-1.3.0  openssl-1.0.0s   Act ...

  5. curl:出现SSL错误提示

    在上一篇博文中,升级ruby版本中,提示如下错误: 1) Error fetching https://mirrors.aliyun.com/rubygems/: [root@web ~]# gem ...

  6. curl 错误总结

    证书域名与访问的域名不一致 问题:curl SSL: certificate subject name 'luffichen_server.tencent.com' does not match ta ...

  7. Linux必知必会--curl

    你有多自律,你就能走多远~ --久节奏.慢读书 Curl命令 学习每个linux命令都该掌握man命令.(可以使用man命令去查看每个命令的使用说明) curl命令是一个利用URL规则在命令行下工作的 ...

  8. Docker Compose + Traefik v2 快速安装, 自动申请SSL证书 http转https 初次尝试

    前言 昨晚闲得无聊睡不着觉,拿起服务器尝试部署了一下Docker + Traefik v2.1.6 ,以下是一些配置的总结,初次接触,大佬勿喷. 我的系统环境是 Ubuntu 18.04.3 LTS ...

  9. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

随机推荐

  1. 【03】Jenkins:SonarQube

    写在前面的话 SonarQube 这个服务有些人熟悉,有些人陌生.对于我们这样的运维人员,我们需要了解的是,SonarQube 是一个代码质量管理平台,懂得怎么安装配置,这其实就差不多足够了.我们在 ...

  2. 浅谈Semaphore类-示例

    Semaphore类有两个重要方法 1.semaphore.acquire(); 请求一个信号量,这时候信号量个数-1,当减少到0的时候,下一次acquire不会再执行,只有当执行一个release( ...

  3. WPF MainWindow的TopMost,Resizemode

    Topmost -[true,false] The default is false, but if set to true, your Window will stay on top of othe ...

  4. vb Replace 实现

    今天改一个VB程序时发现程序自带的replace 函数不知什么原因竟然不好用了 所以就自己写了一个玩玩 记录一下 'XGZ '替换字符 Private Function Replace1(ByVal ...

  5. oracle 获取表\视图的列名

     select COLUMN_NAME FROM user_col_comments WHERE TABLE_NAME='视图名'  select COLUMN_NAME from all_tab_c ...

  6. web攻击日志分析之新手指

    0x00 前言 现实中可能会经常出现web日志当中出现一些被攻击的迹象,比如针对你的一个站点的URL进行SQL注入测试等等,这时候需要你从日志当中分析到底是个什么情况,如果非常严重的话,可能需要调查取 ...

  7. APS系统帮助寻找企业最优库存

    零库存模式的实施要有深厚的民族文化和企业文化为支点.随着对零库存管理研究的深入,就会发现它不仅仅是一种运营管理技术,更是一种文化.一种哲学. 当这种认同文化体现在企业与企业之间时,就会表现出彼此的认同 ...

  8. MyDAL - .OpenDebug() 与 Visual Studio 输出窗口 使用

    索引: 目录索引 SQL Debug 信息说明 一. 对 XConnection 对象 未开启 OpenDebug, 在 VS  状态下,将默认在 VS 窗口 打印出 参数化的 SQL 执行语句: 新 ...

  9. nginx之旅(第一篇):nginx下载安装、nginx启动与关闭、nginx配置文件详解、nginx默认网站

    一.nginx下载安装 版本nginx 1.15.5 系统环境centos7.5(本机ip192.168.199.228) 关闭selinux 和防火墙firewall 1.下载 wget http: ...

  10. 海盗分金问题SQL求解(贪心算法)

    问题 经济学上有个"海盗分金"模型:是说5个海盗抢得100枚金币,他们按抽签的顺序依次提方案:首先由1号提出分配方案,然后5人表决,超过半数同意方案才被通过,否则他将被扔入大海喂鲨 ...