您的位置:首页 > 其它

一次SSL证书切换之后的故障排查

2016-03-07 10:17 260 查看
星期五下班前,在机房把自己支付部门的证书切换一下,貌似相安无事;星期一来到办公室另一个项目的同事说支付接口请求访问不了;想一下是不是自己切换证书引起的;下面是排错步骤:
1、先线下用浏览器访问接口:




*访问的是get请求是可以返回数据的,说明证书是没问题的,那么就是本地机房通信问题或者代码问题了;登录机器查看

2、登录有代码的服务器查看:
>>> import urllib2
>>> import urllib
>>> html = urllib2.urlopen("https:xxxxx?jsonData={xxxxxxx")  ###用匿名指代
>>> print html
<addinfourl at 24155344 whose fp = <socket._fileobject object at 0x16e9ed0>>
>>> dir(html)   ##由于返回的是对象,查看具体有哪些方法
['__doc__', '__init__', '__iter__', '__module__', '__repr__', 'close', 'code', 'fileno', 'fp', 'getcode', 'geturl', 'headers', 'info', 'msg', 'next', 'read', 'readline', 'readlines', 'url']
>>> print html.next()   ##查看next有返回值
{"success":2963.48}


*在本机上执行有返回结果,说明通信没问题,而且能返回结果服务端应该也是没问题,那么剩下的就是php代码了

3、百度找到了,解决方式:
在请求的代码加上如下:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
*原因:在本地的机房无法验证SSL证书,那么代码跳过即可。

这次只是一场简单的排错过程,但是也看到了python在日常运维中也是起到了不小的作用的,主要是思路步骤清晰一步一步来。

本文出自 “小罗” 博客,请务必保留此出处http://xiaoluoge.blog.51cto.com/9141967/1748274
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: