本文介绍的是在linux下centos7 安装php7版本介绍

一、获取PHP

首先,我们先下载php,我用的是php7.4.13版本,建议使用下载工具下载,这样比较快,或者用我准备好的也可以

复制到浏览器打开 https://pan.baidu.com/s/1be5ZNPR1Pp_PNCSMyEf6UA     密码是:6y49

下载完成后用ftp工具上传到 /root 目录下,(具体目录无要求,建议使用我的目录)

或者使用如下下载方式

先进入/root目录

[root@VM-0-15-centos home]# cd ~

使用wget下载

wget  https://www.php.net/distributions/php-7.4.13.tar.gz

无论哪种方式,下载好就行。然后解压,等待解压完成后进入php-7.4.13目录

[root@VM-0-15-centos ~]# tar -zxvf php-7.4.13.tar.gz
[root@VM-0-15-centos ~]# cd php-7.4.13

二、安装php

先安装php依赖,在开始编译安装

在安装php依赖之前,建议使用 yum update 更新一下yum,这样保证依赖版本是接近最新的

#更新yum
[root@VM-0-15-centos php-7.4.13]# yum -y update
#安装php扩展依赖
[root@VM-0-15-centos php-7.4.13]# yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
#编译PHP
[root@VM-0-15-centos php-7.4.13]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp  --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-jpeg-dir --with-freetype-dir --enable-fpm

这些参数做个简单介绍

--prefix=安装路径

--with-config-file-path=php.ini的位置

其他的都是php的一些扩展

编译的时候可能会出现如下错误

1、错误:No package 'sqlite3' found  解决办法如下

# yum安装sqlite-devel
[root@VM-0-15-centos php-7.4.13]# yum install -y sqlite-devel
# 安装完之后在重新编译PHP,如果还是出现这个错误,那么就是版本太低了,你没有执行上面更新yum的操作,先执行更新yum,在安装sqlite-devel

2、错误:No package 'oniguruma' found  解决办法如下

#返回root目录下载oniguruma安装包
[root@VM-0-15-centos ~]# cd ~
[root@VM-0-15-centos ~]# wget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gz
[root@VM-0-15-centos ~]# tar -xvf oniguruma-6.9.4.tar.gz
[root@VM-0-15-centos ~]# cd oniguruma-6.9.4
[root@VM-0-15-centos oniguruma-6.9.4]# ./autogen.sh
[root@VM-0-15-centos oniguruma-6.9.4]# ./configure --prefix=/usr --libdir=/lib64
[root@VM-0-15-centos oniguruma-6.9.4]# make && make install
#编译安装完成后在重新执行编译php

目前我在安装过程中发现就这两处错误,如果发现更多的错误,欢迎评论。

 

解决完所有问题,在回到php-7.4.13目录下,重新编译php,一路顺利出现如下界面,那么恭喜你,php已经编译成功,接下来就该安装了

centos7安装编译qemu centos7编译安装php_centos7安装编译qemu

 

执行如下命令并耐心等待,可以打把王者或者吃把鸡

[root@VM-0-15-centos php-7.4.13]# make && make install.

 出现如下图这个界面,说明安装成功了

centos7安装编译qemu centos7编译安装php_centos_02

你可以进入php的安装目录,查看一下php

[root@VM-0-15-centos php-7.4.13]# cd /usr/local/php
[root@VM-0-15-centos php]# ll

centos7安装编译qemu centos7编译安装php_centos_03

给php新增全局变量

#在文件最底部加入PHP的环境变量 export PATH=$PATH:/usr/local/php/bin    #$PATH:php安装路径/bin
[root@VM-0-15-centos php]# vi /etc/profile

#:wq 保存退出

#重新加载一下环境变量文件  
[root@VM-0-15-centos sbin]# source /etc/profile

#可以看到版本信息了
[root@VM-0-15-centos sbin]# php -v

 

接下来就该配置一下php了

三、配置php

在之前编译的源码包中,找到 php.ini-production,复制到/usr/local/php下,并改名为php.ini:

[root@VM-0-15-centos php]# cp /root/php-7.4.13/php.ini-production /usr/local/php/etc/php.ini

复制启动脚本,并设置权限

[root@VM-0-15-centos php]# cp /root/php-7.4.13/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@VM-0-15-centos php]# chmod +x /etc/init.d/php-fpm

修改php-fpm配置文件

#复制一份配置文件并更名
[root@VM-0-15-centos php]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

#用vi编辑器修改这个配置文件,把 ;pid = run/php-fpm.pid 改成 pid = run/php-fpm.pid (去掉;)
[root@VM-0-15-centos php]# vi /usr/local/php/etc/php-fpm.conf

#然后 :wq 保存并退出

修改www.conf配置文件

#复制一份配置文件并更名
[root@VM-0-15-centos php]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

启动php

 

#启动
[root@VM-0-15-centos php]# /etc/init.d/php-fpm start
#停止
[root@VM-0-15-centos php]# /etc/init.d/php-fpm stop
#重启
[root@VM-0-15-centos php]# /etc/init.d/php-fpm restart
#重新加载
[root@VM-0-15-centos php]# /etc/init.d/php-fpm reload
#查看php-rpm进程
[root@VM-0-15-centos php]# ps -aux | grep php-fpm

如果有php-fpm进程,则说明启动成功

设置开机自启动

#编辑这个文件,在最后加入 /etc/init.d/php-fpm start
[root@VM-0-15-centos php]# vi /etc/rc.local

#:wq 保存退出

#给这个文件增加权限
[root@VM-0-15-centos php]# chmod +x /etc/rc.d/rc.local

四、完成

测试是否可以运行php文件

#创建测试文件test.php,目录可以随意,但是要保证存在,不存在的话vi无法保存
[root@VM-0-15-centos php]# vi /home/www/test.php

#内容是
<?php
echo "hello world";

:wq 保存退出

#运行test.php
[root@VM-0-15-centos php]# php /home/www/test.php

输入如图

centos7安装编译qemu centos7编译安装php_centos_04

撒花!庆祝!