免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6667 | 回复: 2
打印 上一主题 下一主题

PHP怎样验证一个网站是否有证书错误? [复制链接]

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-06-10 12:03 |只看该作者 |倒序浏览
目前我有一个需求,就是要使用某个域名,向指定的主机IP访问,来检查网站是否能正常打开,而不是直接去访问这个域名解析到的IP。主要用来检查http代理是否正常。

通过curl的话,如果是http的请求,很简单,直接访问 "http://IP地址" ,然后指定https头部为 "Host:域名"。但是去访问一个https的网站,即使这个网站证书配置正确,也会报证书错误。

网上搜了下,一种说法是设置CURLOPT_SSL_VERIFYPEER为false,不验证证书,但这样就无法实现我的目的了。我也需要验证证书是否正确配置。

还有一种说法是高版本curl中带有CURLOPT_RESOLVE,可以让curl访问时指定域名指向的IP,但是我升级了curl、libcurl到7.49.1,PHP到5.5.36以后,还是提示"Use of undefined constant CURLOPT_RESOLVE - assumed 'CURLOPT_RESOLVE'"。而且只有PHP调用curl时有这个问题,使用curl命令行时可以正常使用--resove参数。

请问有人遇到过类似问题吗,这是curl的bug吗,有没有办法可以解决这个问题,或者通过其他的方式来达到我上述的目的呢?

论坛徽章:
10
CU大牛徽章
日期:2013-09-18 15:20:48程序设计版块每日发帖之星
日期:2016-07-21 06:20:00IT运维版块每日发帖之星
日期:2015-07-30 09:40:01技术图书徽章
日期:2014-10-14 16:00:43天蝎座
日期:2013-09-27 17:41:29CU大牛徽章
日期:2013-09-18 15:21:17CU大牛徽章
日期:2013-09-18 15:21:12CU大牛徽章
日期:2013-09-18 15:21:06CU大牛徽章
日期:2013-09-18 15:20:58每日论坛发贴之星
日期:2016-07-21 06:20:00
2 [报告]
发表于 2016-07-18 15:52 |只看该作者
很明显是你的php没有用这个版本编译.

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
3 [报告]
发表于 2016-07-19 15:14 |只看该作者
tomac_cu 发表于 2016-07-18 15:52
很明显是你的php没有用这个版本编译.


我在PHP代码里显示curl的版本,也是最新的,请问“php没有用这个版本编译”,具体是指什么操作呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP