• 我们中的有些人,注定要在日常生活的点滴中去寻找生命的意义。---- 《生活大爆炸》|

Linux服务器PHP环境curl始终返回false(解决方案)

PHP admin 6个月前 (03-04) 196次浏览 已收录 0个评论

1、问题描述:在linux系统的lnmp环境中,通过curl操作获取微信access_token始终返回false或null

线上服务器突然报错,用户登陆之后无响应,没有跳转到指定url,通过排查是access_token未获取,用file_get_contents先解决了问题,之后仔细研究了下问题,以下为解决方案:

在curl的操作中用curl_error($url);来看是否有报错,报错信息为:Problem with the SSL CA cert (path? access rights?)

有报错信息,这就好办了

这个首先:yum install ca-certificates (此命令:没有安装过该包该命令会把此包装上,有的话则更新该包)

重启php-fpm

到此,问题解决

但是,服务器上环境是多版本php共存的,刚好该项目用的php7版本的环境,没有把此版本php-fpm,注册为系统命令,(即:/etc/init.d/下没有此项目php-fpm命令文件)

而且,php7以后,不能通过安装目录下的php-fpm(start|stop|restart)来进行服务的管理,只能通过信号变量,

所以有了以下操作:

1、你能知道你的该php进行的pid,一般在安装目录下的/var/run/php-fpm.pid文件里,(例如我的:/usr/local/php7/var/run/php-fpm.pid)

2、用信号变量进行操作:

关闭命令:kill -INT cat /var/local/php7/var/run/php-fpm.pid

重启命令:kill -USR2 cat /var/local/php7/var/run/php-fpm.pid

其实,使用service php-fpm restart或者systemctl start php-fpm 都是类似的,最终都是转成信号变量的方式来对php-fpm进行进行操作的

如果你的linux系统/etc/init.d/目录下有php-fpm,你打开就恍然大悟了,同样的还有nginx的切割日志一些操作都是典型的使用信号变量的例子


本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Linux服务器PHP环境curl始终返回false(解决方案)
喜欢 (0)

您必须 登录 才能发表评论!