准备
-
查看当前linux版本
命令
lsb_release -a
-
创建安装软件的目录,方便统一管理,在根目录下创建路径
/server
用来存放所有软件。命令
mkdir /server
-
选择下载php的版本,这里以7.3.13为例。下载地址:php版本
命令:
cd /server #切换到软件安装目录 wget https://www.php.net/distributions/php-7.3.13.tar.gz #下载到当前目录 tar -zxvf php-7.3.13.tar.gz #解压到当前位置 rm -rf nginx-1.18.0.tar.gz #删除压缩包
安装
-
执行
configure
,生成配置命令:
cd php-7.3.13/ #进入php的目录 ./configure --prefix=/server/php --with-config-file-path=/server/php/etc --with-mhash --with-openssl --with-mysqli --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-pcntl --enable-calendar --enable-exif --enable-sockets --with-xmlrpc --with-libxml-dir --enable-soap --with-gettext --enable-session --with-curl --with-jpeg-dir --with-png-dir --with-freetype-dir --with-bz2 --enable-opcache --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-fast-install
编译一般都会缺少各种依赖而报错,解决依赖
-
configure: error: libxml2 not found. Please check your libxml2 installation.
解决办法:
yum install -y libxml2-devel
-
configure: error: Please reinstall the BZip2 distribution
解决办法:
yum install -y bzip2-devel
-
configure: error: cURL version 7.15.5 or later is required to compile php with cURL support
解决办法:
yum install -y curl-devel
-
configure: error: jpeglib.h not found.
解决办法:
yum install -y libjpeg-devel
-
configure: error: png.h not found.
解决办法:
yum install -y libpng-devel
-
configure: error: freetype-config not found.
解决办法:
yum install -y freetype-devel
-
configure: error: Please reinstall the libzip distribution
解决办法:
wget https://libzip.org/download/libzip-1.2.0.tar.gz #下载libzip tar -zxvf libzip-1.2.0.tar.gz #解压到当前目录 rm -rf libzip-1.2.0.tar.gz #删除压缩包 cd libzip-1.2.0/ #进去libzip目录 ./configure --bindir=/usr/sbin/ --sbindir=/usr/sbin/ --libexecdir=/usr/libexec --sysconfdir=/etc/ --localstatedir=/var --libdir=/usr/lib64/ --includedir=/usr/include/ --datarootdir=/usr/share --infodir=/usr/share/info --localedir=/usr/share/locale --mandir=/usr/share/man/ --docdir=/usr/share/doc/libzip-1.2.0 #生成配置 make && make install #编译安装
结果:
出现如上显示,则代表配置成功
-
-
编译源码
命令:
make #在当前路径下执行make命令进行编译
结果:
出现如上显示,则代表编译成功
-
编译安装
命令:
make install #在当前路径下执行编译安装
结果:
出现如上显示,则代表编译成功
-
配置PHP
-
复制php.ini:
cp -a php.ini-production /server/php/etc/php.ini #复制php.ini到etc目录下
-
复制php-fpm.conf
cd /server/php/etc/ #跳转到etc目录下 cp -a php-fpm.conf.default ./php-fpm.conf #复制php-fpm配置文件
-
复制www.conf
cd /server/php/etc/php-fpm.d #跳转到php-fpm.d目录下 cp -a www.conf.default ./www.conf #复制www.conf
-
配置php为环境变量
export PATH=$PATH:/server/php/bin
-
-
测试
命令:
php-v
结果:
安装完成