centos6.5 - centos 6.5系统PHP环境下的CURL库的SSL Version默认为NSS,怎么变更为OpenSSL?

 残伤贱爱 发布于 2022-11-17 08:21

现在要求PHP的环境支持TSL1.2和SHA-256,php的CURL库升级到curl 7.35.0,openssl升级到OpenSSL/1.0.1f,但是通过配资文件查看curl的SSL Version是NSS,如果修改为openssl?
入下图SSL Version处如何变更为openssl

centos 6.5 php的curl的SSL Version 为什么是NSS/3.19.1 而不是OpenSSL/1.0.1f 如何变更?

1 个回答
  • 针对你的问题,在我的开发环境里亲自实践了一遍成功了,说下步骤:

    1. 先来一次yum update,把openssl更新到最新版本

    2. 然后确认curl的ssl版本是不是openssl,centos默认安装的是NSS

    如果检测不是如上图的openssl,就要下载curl重新编译

    wget https://curl.haxx.se/download/archeology/curl-7.19.7.tar.gz
    tar xvzf curl-7.19.7.tar.gz
    cd curl-7.19.7
    ./configure --prefix=/usr/local/curl/ --without-nss --with-ssl
    sudo make && sudo make install

    备份默认的curl二进制文件
    sudo mv /usr/bin/curl /usr/bin/curl.bak
    然后做一个新的curl软链
    sudo ln -s /usr/local/curl/bin/curl /usr/bin/curl

    然后再curl --version确认是否已经是openssl的版本

    1. 下载对应版本的PHP源码包,重新编译安装php的curl扩展

      wget http://cn2.php.net/get/php-5.6.21.tar.gz
      tar xvzf php-5.6.21.tar.gz
      cd phpphp-5.6.21/ext/curl
      phpize
      ./configure --with-curl=/usr/local/curl/ --with-php-config=/usr/local/php/bin/php-config
      sudo make && sudo make install

    安装完毕以后会在/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/目录下生成curl.so

    注意:如果原来安装过curl扩展,那么要先删除curl.so

    最后重启下php-fpm,再确认下phpinfo

    2022-11-17 08:24 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有