在centos6.5上升级php-libxml版本到2.9.0
当前系统,软件版本说明:
php 5.6.
libxml 2.7.
glibc 2.12
zlib 1.2.
xz-libs 4.999.
需求:
应开发的需求,线上环境,php-libxml版本升级到2.8以上。
升级步骤:
1、安装工具集
yum groupinstall -y 'development tools'
yum install kernel-headers -y
2、解决安装libxml2-1.9.0版本时,遇到的依赖关系
1)升级glibc版本 ( 版本 > glibc-2.12 )
centos6系统,官方支持升级的最高版本是glibc-2.12(即yum升级支持的最高版本)。
wget http://ftp.redsleeve.org/pub/steam/glibc-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-devel-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-common-2.15-60.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/glibc-headers-2.15-60.el6.x86_64.rpm rpm -Uvh glibc-2.15-.el6.x86_64.rpm glibc-devel-2.15-.el6.x86_64.rpm glibc-common-2.15-.el6.x86_64.rpm glibc-headers-2.15-.el6.x86_64.rpm
查看当前系统安装了glibc哪些包,以及最高支持版本:
# rpm -qa |grep glibc
glibc-2.15-.el6.x86_64
glibc-common-2.15-.el6.x86_64
glibc-devel-2.15-.el6.x86_64
glibc-headers-2.15-.el6.x86_64
# strings /lib64/libc.so. | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_2.
GLIBC_PRIVATE
2)升级zlib版本 ( 版本 >= zlib-1.2.5 )
centos6系统,官方支持升级的最高版本是zlib-1.2.5。(即yum升级支持的最高版本)
wget http://ftp5.gwdg.de/pub/opensuse/repositories/home:/codice:/mono-redhat/CentOS_CentOS-6/x86_64/zlib-1.2.5-codice.4.1.x86_64.rpm
wget http://ftp5.gwdg.de/pub/opensuse/repositories/home:/codice:/mono-redhat/CentOS_CentOS-6/x86_64/zlib-devel-1.2.5-codice.4.1.x86_64.rpm
wget http://ftp5.gwdg.de/pub/opensuse/repositories/home:/codice:/mono-redhat/CentOS_CentOS-6/x86_64/zlib-static-1.2.5-codice.4.1.x86_64.rpm
rpm -Uvh zlib-1.2.-codice.4.1.x86_64.rpm zlib-devel-1.2.-codice.4.1.x86_64.rpm zlib-static-1.2.-codice.4.1.x86_64.rpm
3)python2.7支持
centos6.5中,官方默认的Python版本为2.6。要装2.7版本,需要修改yum源。
yum install epel-release -y
wget https://centos6.iuscommunity.org/ius-release.rpm
rpm -ivh ius-release.rpm
yum clean all
yum install python27 -y
4)升级xz-libs版本 ( 版本 > xz-libs-4.9 )
centos6.5,官方yum升级的最高版本是4.999.9
wget http://ftp.redsleeve.org/pub/steam/xz-libs-5.0.5-1.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/xz-devel-5.0.5-1.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/xz-5.0.5-1.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/xz-lzma-compat-5.0.5-1.el6.x86_64.rpm
wget http://ftp.redsleeve.org/pub/steam/xz-compat-libs-5.0.5-1.el6.x86_64.rpm rpm -Uvh xz-libs-5.0.-.el6.x86_64.rpm xz-devel-5.0.-.el6.x86_64.rpm xz-5.0.-.el6.x86_64.rpm xz-lzma-compat-5.0.-.el6.x86_64.rpm xz-compat-libs-5.0.-.el6.x86_64.rpm
3、升级libxml2
wget http://xmlsoft.org/sources/libxml2-devel-2.9.0-0rc0.x86_64.rpm
wget http://xmlsoft.org/sources/libxml2-2.9.0-0rc0.x86_64.rpm
wget http://xmlsoft.org/sources/libxml2-python-2.9.0-0rc0.x86_64.rpm rpm -Uvh libxml2-2.9.-0rc0.x86_64.rpm libxml2-devel-2.9.-0rc0.x86_64.rpm libxml2-python-2.9.-0rc0.x86_64.rpm
4、重新编译php
需要重新编译php,使升级的php-libxml生效。
进入php5.6.15的源码目录,重新编译php:
# cd php-5.6.
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-bcmath=shared --with-pdo_sqlite --with-gettext=shared --with-iconv --enable-ftp=shared --with-sqlite --with-sqlite3 --enable-mbstring=shared --enable-sockets=shared --enable-zip --enable-soap=shared --with-openssl --with-zlib --with-curl=shared --with-gd=shared --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mcrypt=shared --with-mhash=shared --enable-opcache --with-mysql=mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --without-pear --with-libdir=lib64 --disable-fileinfo
# make
替换生成的php、php-cgi程序文件:
# /etc/init.d/php-fpm stop
# mv /usr/local/php/bin/php /usr/local/php/bin/php.bak
# mv /usr/local/php/bin/php-cgi /usr/local/php/bin/php-cgi.bak
# cp -a sapi/cli/php /usr/local/php/bin/
# cp -a sapi/cgi/php-cgi /usr/local/php/bin/
# /etc/init.d/php-fpm start
查看php-libxml版本升级是否生效:
# /usr/local/php/bin/php -i|grep libxml
libxml Version => 2.9.
libxml
libxml2 Version => 2.9.
后续补充:
开启phpinfo访问,发现libxml版本仍是2.7.6。上述替换php、php-cgi程序的方法,是不能使得php-libxml版本升级生效的。
需要重新编译安装php(不同安装目录),才会生效。
在centos6.5上升级php-libxml版本到2.9.0的更多相关文章
- centos6.5上安装5.7版本的mysql
centos6.5上安装5.7版本的mysql https://www.cnblogs.com/lzj0218/p/5724446.html 设置root可以在本机以外的机器访问 mysql -uro ...
- 最简单的方式在linux上升级node.js版本
node的升级频率太高,n模块来升级是最方便的,网上看了很多资料介绍使用n模块,但是安装n模块之后却经常找不到这个命令 很多同学安装之后直接去使用n会发现命令不存在,就停留在这一步无法前进了. 解决 ...
- Centos6.5下升级Python版本
Cenos6.5升级Python2.6到2.7 1.下载源码包 wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz 2.进行 ...
- aliyun CentOS6.5 上 svn 安装笔记
为了方便管理自己的一些学习资料.总结等,在CentOS6.5上安装SVN,记录过程如下: 1.1 安装方式 独立服务器 fsfs SVN服务器有2种运行方式:独立安装.SVN+Apache.独立 ...
- CentOS6.9下升级默认的OpenSSH操作记录(升级到OpenSSH_7.6p1)
近期对IDC机房服务器做了一次安全漏洞扫描,漏扫结果显示服务器的OpenSSH版本太低(CentOS6默认是OpenSSH_5.3p1),存在漏洞隐患,安全部门建议升级到OpenSSH_7.6p1.升 ...
- CentOS6 系统下升级python后yum命令使用时报错
CentOS6 系统下升级python后yum命令使用时报错,如下: [root@xxxxxxx]#yumFile"/usr/bin/yum",line30exceptKeyboa ...
- CentOS6.5上安装Python2.7和PIP
目前大部分用户使用的CentOS6.5上默认的Python还是2.6版本.升级到Python2.7碰到很多问题.本文将介绍如何安装Python2.7. 1. 安装必要的准备包 安装过程将用到gcc,方 ...
- CentOS6、7升级Openssh至7.9
出于安全考虑,定期使用Nessus对服务器进行扫描,最新Nessus提示服务器的SSH版本有漏洞,所以把SSH升级到最新版本 1.为了防止升级失败登陆不了,所以需要安装telnet mkdir /ro ...
- 解决centos6系统上python3—flask模块的安装问题
Flask 是一个使用 Python 编写的轻量级 Web 框架(所以我们前面花了那么多时间安装 Python3 呀).它被称为微型架构,因为其使用非常简单的核心以及功能丰富的扩展.虽然 Flask ...
随机推荐
- 团体程序设计天梯赛-练习集-L1-024. 后天
L1-024. 后天 如果今天是星期三,后天就是星期五:如果今天是星期六,后天就是星期一.我们用数字1到7对应星期一到星期日.给定某一天,请你输出那天的“后天”是星期几. 输入格式: 输入第一行给出一 ...
- Kattis - Game Rank
Game Rank Picture by Gonkasth on DeviantArt, cc by-nd The gaming company Sandstorm is developing an ...
- nyoj48-小明的调查作业
48-小明的调查作业 内存限制:64MB时间限制:1000msSpecial Judge: No accepted:3submit:4 题目描述: 小明的老师布置了一份调查作业,小明想在学校中请一些同 ...
- PuTTY_0.67.0.0工具链接linux
1.虚拟机设置 在网络适配器中选中桥接模式,勾选复制物理网络链接状态(p)选项.点击确认. 2.开启虚拟机,检查是否安装有ssh服务器 a.查看是否启动ssh服务器 ps -a | grep ssh ...
- Python - Datacamp - Introduction to Matplotlib
Python - Datacamp - Introduction to Matplotlib Datacamp: https://www.datacamp.com/ # 1.py 基本matplotl ...
- Ubuntu14.04 安装CUDA7.5 + Caffe + cuDNN
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50961542 花了一天时间,在电脑上安 ...
- Innodb性能优化之参数设置
现在,Innodb是Mysql最多使用的存储引擎.其性能一直广受关注.本文通过基本的参数设置来提高其性能. innodb_buffer_pool_size 缓冲池大小.这是innodb参数中最重要的设 ...
- js 现给数字加三位一逗号间隔的种方法
方法一:(ie下有问题) <script type= "text/javascript"> var num_s = "1232134456.546 " ...
- 关系数据库标准语言SQL
篇幅过长,恐惧者慎入!!!基础知识,大神请绕道!!! 本节要点: l SQL概述 l 学生-课程关系 l 数据定义 基本表的定义.删除与修改 索引的建立与删除 l 查询 单表查询 连接查询 嵌 ...
- Java n个线程轮流打印数字的问题
一. 实现两个线程.轮流打印出数字.例如以下: bThread --> 10 aThread --> 9 bThread --> 8 aThread --> 7 bThread ...