1、先在 https://www.php.net/releases/ 地址下载了PHP 7.3.33 (tar.gz)包
2、ftp传到/usr/local/src文件下
3、cd /usr/local/src
4、tar -xvf php-7.3.33.tar.gz
5、cd php-7.3.33
6、./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl=/usr/local/curl2 --enable-mbregex --enable-mbstring --enable-intl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --with-gettext --disable-fileinfo --enable-opcache
7、
–prefix php安装所在的目录
–with-config-file-path php配置文件所在目录
8、报错 configure: error: xml2-config not found. Please check your libxml2 installation
解决办法:
检查是否安装了libxm包 rpm -qa |grep libxml2
安装 yum install libxml2-devel
原文链接:https://www.cnblogs.com/cxsabc/p/10627621.html
9、报错 checking for cURL 7.15.5 or greater… configure: error: cURL version 7.15.5 or later is required to
安装 yum -y install curl-devel
10、继续运行第6步configure
11、显示配置成功后,没有错误信息,就运行make && make install,安装成功
12、生成 php.ini 配置文件
cp php.ini-production /usr/local/php/etc/php.ini
13、生成 php-fpm 文件
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
14、生成php-fpm 配置文件
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
15、生成www.conf 配置文件
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
16、修改php的timezone
vim /usr/local/php/etc/php.ini
date.timezone = PRC
17、将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
18、查看php扩展信息
php -m
以上步骤原文链接:https://www.php.cn/php-weizijiaocheng-471284.html
19、安装fileinfo扩展
cd php-7.3.33/ext/fileinfo/
/usr/local/php/bin/phpize
报错
Configuring for:
PHP Api Version: 20180731
Zend Module Api No: 20180731
Zend Extension Api No: 320180731
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
安装 yum install -y m4 autoconf
安装后再运行/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
找到php配置文件php.ini的位置,在最后加入
[fileinfo]
extension = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/fileinfo.so”
service php-fpm stop
service php-fpm start
20、安装redis扩展
https://pecl.php.net/package/redis 地址下载redis-5.3.7.tgz
可以直接访问https://pecl.php.net/get/redis-5.3.7.tgz
传到服务器上面解压
tar -xvf redis-5.3.7.tgz
cd redis-5.3.7
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
找到php配置文件php.ini的位置,在最后加入
[redis]
extension = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/redis.so”
service php-fpm stop
service php-fpm start
安装好后
php -m 查看到有这两项说明安装成功
启动php时遇到的问题
ERROR: [pool www] cannot get uid for user ‘root’
是在www.conf里面配置的www用户
意思是不能用root用户启动
useradd www 添加用户
groupadd www 添加用户组
再重新启动就可以
查看当前用户 whoami
查看当前登陆的所有用户 who
查看当前用户所属的组 groups