• LNMPA 升级OpenSSL


      1、OpenSSL源码升级

      到https://www.openssl.org/source/找想要的版本,拿到链接wget下来:

    wget https://www.openssl.org/source/openssl-1.0.1u.tar.gz
    tar -zxvf openssl-1.0.1u.tar.gz
    cd openssl-1.0.1u.tar.gz
    ./config shared zlib //一定记得加上shared选项,不然会导致OpenSSL Library Version 和OpenSSL Header Version不一致
    make && make install
    #备份以前的OpenSSL文件
    mv /usr/bin/openssl /usr/bin/openssl.old
    mv /usr/include/openssl /usr/include/openssl.old
    #设置软链接
    ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl 
    ln -s /usr/local/ssl/include/openssl /usr/include/openssl
    #更新链接
    echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
    ldconfig -v

    如果成功执行

    openssl version

      会返回刚才安装的版本。

      2、重新编译PHP

    #查看编译时的参数
    /usr/local/php/bin/php -i | grep Command

    会返回格式如:

    ./configure'  '--prefix=/usr/local/php' '--with-mysql' '--with-mysqli' '--with-iconv-dir' '--with-zlib' '--with-libxml-dir' '--enable-xml' '--with-curl' '--enable-fpm' '--enable-mbstring' '--with-gd' '--with-openssl' '--with-mhash' '--enable-sockets' '--with-xmlrpc' '--enable-zip' '--enable-soap' '--disable-fileinfo'

      把单引号去掉,—with-openssl改成—with-openssl=/usr/local/ssl/,重新编译之前要重装libiconv,

      不然会报undefinedreferenceto`libiconv_open。操作如下命令:

    wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
    tar -zxvf libiconv-1.13.1.tar.gz
    cd libiconv-1.13.1
    ./configure --prefix=/usr/local/libiconv
    make && make install

      然后将—with-iconv-dir修改为—with-iconv=/usr/local/libiconv。

      然后进入安装的PHP版本的源码包,重新编译,进入PHP相应版本包内,make&&makeinstall。

      如果是LNMP环境到此就结束了。

      3、重新编译Apache

      先到安装Apacher的目录下的build/config.nice文件中查看编译安装Apache时的参数,文件内容类似如下:

    #! /bin/sh
    #
    # Created by configure
    "./configure" 
    "--prefix=/usr/local/apache" 
    "--enable-mods-shared=most" 
    "--enable-headers" 
    "--enable-mime-magic" 
    "--enable-proxy" 
    "--enable-so" 
    "--enable-rewrite" 
    "--with-ssl" 
    "--enable-ssl" 
    "--enable-deflate" 
    "--enable-suexec" 
    "--with-included-apr" 
    "--with-mpm=prefork" 
    "--with-expat=builtin" 
    "$@"

    "$@"将双引号、反斜杠去掉,并且在—with-ssl后面换上新OpenSSL的路径,这里安装在/usr/local/ssl/下,就改成—with-ssl=/usr/local/ssl。然后进入Apache对应版本的源码包中重新编译,安装。成功后phpinfo即可看到新安装的OpenSSL版本。

  • 相关阅读:
    HIVE优化学习笔记
    HIVE执行引擎TEZ学习以及实际使用
    端口状态 LISTENING、ESTABLISHED、TIME_WAIT及CLOSE_WAIT详解,以及三次握手四次挥手,滑动窗口(整理转发)
    kafka时间轮简易实现(二)
    kafka时间轮的原理(一)
    JAVA之G1垃圾回收器
    JAVA之垃圾收集器
    JAVA之内存结构
    SparkSQL学习笔记
    Python 学习 --简单购物车程序
  • 原文地址:https://www.cnblogs.com/ouruola863/p/9303757.html
Copyright © 2020-2023  润新知