加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Centos中PHP5升级为PHP7的方法

发布时间:2022-06-15 11:24:49 所属栏目:PHP教程 来源:互联网
导读: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 ,安装必要的依赖
     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-devel
 
  yum -y install httpd-devel
 
  find /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
 
  一般都可以解决问题。
 
  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.conf
 
  cp /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。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读