知识

原因:php5.6.37漏洞扫描存在问题,升级为较高的5.6.4版本。升级过程记录如下: 1.通过phpinfo查看之前编译选项: 2.停止服务并备份 service php-fpm stopmv /usr/local/php /usr/local/php_old 3.下传安装

您当前位置>主页 > 知识 > 软件开发 >

php小版本升级 5.6.37 to 5.6.4

发表时间:2020-04-23 15:44

文章来源:admin

浏览次数:

原因:php5.6.37漏洞扫描存在问题,升级为较高的5.6.4版本。升级过程记录如下:

1.通过phpinfo查看之前编译选项:

2.停止服务并备份

service php-fpm stop
mv /usr/local/php /usr/local/php_old 

3.下传安装包

 # wget http://cn2.php.net/distributions/php-5.6.4.tar.gz

 

 

4.解压进入安装目录


	
# tar zxf php-5.6.4.tar.gz
# cd php-5.6.4

5.编译安装


	
# export LD_LIBRARY_PATH=/usr/local/mysql/lib
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-apxs2=/usr/local/apache/bin/apxs --enable-fpm --enable-shared --enable-zip --with-bz2 --enable-ftp --with-jpeg-dir --with-png-dir --with-freetype-dir --with-libxml-dir --with-xmlrpc --with-zlib-dir --with-gd --with-gmp --enable-gd-native-ttf --with-curl --with-regex=php --with-pic --with-xsl --enable-wddx --with-iconv --with-gettext --with-pear --enable-ctype --enable-calendar --enable-mbstring --enable-bcmath --enable-sockets  --enable-exif --disable-rpath  --with-mcrypt --with-mhash  --with-openssl --enable-sysvsem --enable-sigchild --enable-sysvshm --enable-soap  --enable-fileinfo --enable-opcache=no

# make ZEND_EXTRA_LIBS='-liconv'
# make
...
Build complete.
Don't forget to run 'make test'.
 
# make install
 

6.修改配置文件

cp /usr/local/php_old/* /usr/local/php/etc -r

7.启动服务

service php-fpm start

 

8.查看是否升级成功

发现版本不一致

查找系统里PHP相关的目录或文件
 
find / -name php
1
 
查看列出的 PHP 版本的信息
 
/usr/bin/php -v // PHP 5.4.45
/usr/local/php/bin/php -v // PHP 7.2.18
1
2
 
 
删除 /usr/bin/ 目录下的所有PHP相关的目录或文件
 
rm -rf ./php
rm -rf ./php-cgi
rm -rf ./php-config
rm -rf ./phpize
 
 
环境变量中添加自己编译的 PHP 的路径
 
vim /etc/profile
1
Shift + G 定位到最后一行,添加自己编译的 PHP 的路径
 
export PATH="/usr/local/php/bin:$PATH"
1
保存退出,执行
 
source /etc/profile
1
再次检查 PHP 版本
 
php -v
 


如何是phpinfo版本信息不对,可以修改vi /etc/rc.d/init.d/php-fpm文件,对应的路径

start () {
echo -n $"Starting $prog: "
dir=$(dirname ${pidfile})
[ -d $dir ] || mkdir $dir
daemon --pidfile ${pidfile} /usr/local/php/sbin/php-fpm --daemonize
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch ${lockfile}
}

 

相关项目查看更多