一、安装依赖包
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-7.3.0
-
1、这里推荐使用迅雷下载
http://cn2.php.net/get/php-7.3.0.tar.gz/from/this/mirror
- 迅雷下载完成后,将文件格式改为 .tar 后解压
- 将 php-7.3.0.tar 文件通过 FTP 等软件上传到服务器中 /usr/local/src 文件夹下
-
2、linux命令下载 [速度无法直视],这里不做推荐
cd /usr/local/src
wget http://cn2.php.net/get/php-7.3.0.tar.gz/from/this/mirror -o php-7.3.0
三、解压
tar -xvf php-7.3.0.tar
四、配置
cd php-7.3.0
./configure \
--prefix=/usr/local/php \
--exec-prefix=/usr/local/php \
--bindir=/usr/local/php/bin \
--sbindir=/usr/local/php/sbin \
--includedir=/usr/local/php/include \
--libdir=/usr/local/php/lib/php \
--mandir=/usr/local/php/php/man \
--with-config-file-path=/usr/local/php/etc \
--with-openssl \
--enable-mbstring \
--enable-fpm
五、编译安装
make && make install
六、编译错误解决:internal compiler error: Killed (program cc1plus)
- 内存不足造成的,安装时需要内存至少2G内存
- 解决方法:交换分区
dd if=/dev/zero of=/swapfile bs=64M count=16
mkswap /swapfile
swapon /swapfile
七、生成 php.ini 配置文件
cp php.ini-production /usr/local/php/etc/php.ini
八、生成 php-fpm
文件
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
九、生成php-fpm 配置文件
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
十、生成www.conf 配置文件
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
十一、将php安装目录到系统环境变量
vim /etc/profile.d/php.sh
- 添加以下内容
export PATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/
- 使环境变量生效
source /etc/profile.d/php.sh
- 启动php-fpm
service php-fpm start
- 设置php开机启动
chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
十二、查看是否安装成功
php -v
PHP 7.3.0 (cli) (built: Aug 20 2020 19:27:30) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies