Centos下如何将PHP5升级成PHP7

1、首先下载PHP7安装包,使用wget http://am1.php.net/distributions/php-7.2.0.tar.bz2,或者直接访问下载,然后ftp到linux服务器
2、解压压缩包,tar –xjf php-7.0.2.tar.bz2
3、进入文件夹,cd php-7.0.2 ,安装必要的依赖工具,

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel

这里主要是升级,一般在php5都安装了,所以这一步可以省略
4. 安装几个依赖(必须安装,否则后面无法生成apache所用的libphp7.so文件)

yum -y install perl
yum –y install perl-develyum -y install httpd-develfind /usr  -name apxs 取得所用路径,后面编译时用到。

5.准备编译工作

./configure --prefix=/usr/local/php7 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs

**注意:其中的 –enable-gd-native-ttf 可以不安装,处理图形用的,如果有需求可以以后以扩展形式装
–with-apxs2=/usr/bin/apxs 后面的路径改为第4步得到的路径
–prefix=/usr/local/php7 单独安装在php7的文件夹,避免和php5冲突**
6.编译
make
这一步容易出现很多问题,
如果遇到譬如:undefine 。。。。
/ext/cli./php …
Openssl
等等错误,而且确定安装了相关的模块,则一般清除之前的编译,删除相关文件后重新编译

make clean
rm –rf /usr/local/php7

一般都可以解决问题。
其他的错误可以参照这篇博客查阅这篇博客:
http://www.cnblogs.com/sweetXiaoma/p/5855732.html
http://www.linuxidc.com/Linux/2017-08/146220.htm
关键还是自行解决,介于linux发行版太多,而且每台服务器的环境配置都不同,所以会遇到很多奇葩的问题。
7.安装
Make install
8.准备配置文件

cp php.ini-developement /etc/php.ini   //根据实际情况,可以使用production或者development默认配置cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.confcp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

9.需要修改apache的配置文件
Vi /etc/httpd/conf/httpd.conf 找到LoadModule php7_module modules/libphp7.so,如果没有手动加上,
将LoadModule php5_module modules/libphp5.so注释掉
cp /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf_5
Vi /etc/httpd/conf.d/php.conf
改为下面这样:(将涉及到php5的注释掉,改为php7相关模块)

<IfModule prefork.c>
  LoadModule php7_module modules/libphp7.so</IfModule><Files ".user.ini">
    <IfModule mod_authz_core.c>
        Require all denied    </IfModule>
    <IfModule !mod_authz_core.c>
        Order allow,deny        Deny from all
        Satisfy All</IfModule></Files>DirectoryIndex index.php# mod_php options<IfModule  mod_php7.c>
    <FilesMatch \.php$>
        SetHandler application/x-httpd-php</FilesMatch>
    php_value session.save_handler "files"
    php_value session.save_path    "/var/lib/php/session"
    php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"</IfModule>

10.重启apache服务器
service httpd restart

原创文章,作者:KVYZD,如若转载,请注明出处:http://www.wangzhanshi.com/n/8670.html

(0)
KVYZD的头像KVYZD
上一篇 2025年1月1日 16:43:10
下一篇 2025年1月1日 16:43:13

相关推荐

  • PHP7新功能及语法变化的示例分析

    标量类型声明 有两种模式: 强制 (默认) 和 严格模式。 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (flo…

    php 2025年1月1日
  • centos7上编译安装php7以php-fpm方式连接apache的方法

    好几个月之间其实已经配置过LAMP LNMP等等一些配置,以前配置都是按照晚上抄的,基本都能配置出来,现重头学想自己配置下,但是发现好多配置都忘了 ,中间踩了几个坑,记录下,也更彻…

    2025年1月1日
  • 如何实现可兼容php5与php7的cURL文件上传功能

    具体如下: 为啥要写这个示例 最近修改一个项目,需要通过cURL上传文件。 记得之前做过类似实现的,于是翻出来之前的代码,使用的是“@”前缀方式。 但同样的方法现在不行了!后来发现…

    php 2025年1月1日
  • PHP7打开Opcache的方法

    PHP7已经发布了, 作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想…

    2025年1月1日
  • Laravel事件系统实现浏览量的统计

    1. 介绍 Laravel 是一个开源的 PHP 框架,拥有简洁优雅的语法和强大的功能,广泛用于构建高性能的 Web 应用程序。在开发 Web 应用过程中,我们经常需要统计网页的浏…

    php 2024年12月17日
  • Laravel中创建Zip压缩文件并提供下载

    如果您需要您的用户支持多文件下载的话,最好的办法是创建一个压缩包并提供下载,在 Laravel 中,我们经常需要处理文件的压缩和下载任务,其中,创建 Zip 压缩文件并提供下载是一…

    php 2024年12月17日
  • 基于PHP实现端口批量查询工具

    查询速度较慢,建议输入20个以内端口,暂未整理端口服务信息所以暂时不显示。 <?php error_reporting(0); //打开报错:去行首双斜杠 header(‘C…

    php 2024年12月17日
  • PHP实现处理三级分类数据的示例代码

    一、原始数据 function getDatas(){ return [ [ ‘component’ => ‘system’, ‘redict’ => ‘/system…

    php 2024年12月17日
  • php7安装sodium扩展的方法

    当前使用Centos7.x系统,php使用7.2版本 安装libsodium libsodium是安装sodium扩展的必须依赖条件,我这里提供两种安装方式,编译和直接yum 编译…

    php 2025年1月1日
  • OSX下安装PHP7的全过程分享

    今天小编给大家分享的是OSX下安装PHP7的全过程,很多人都不太了解,今天小编为了让大家更加了解OSX下安装PHP7的方法,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的…

    php 2025年1月1日

发表回复

登录后才能评论