在CentOS上升级PHP版本,你可以选择使用Remi仓库或者手动编译安装。以下是两种方法的详细步骤:
方法一:使用Remi仓库
- 首先,确保已经安装了EPEL和Remi仓库。如果还没有安装,请运行以下命令:
sudo yum install epel-release sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
注意:上述命令适用于CentOS 7。如果你使用的是CentOS 8,请将命令中的URL替换为适用于CentOS 8的URL。
- 启用Remi仓库。运行以下命令,将
替换为你想要安装的PHP版本(例如:7.4):
sudo yum-config-manager --enable remi-php
- 更新PHP及其模块。运行以下命令:
sudo yum update php\*
- 重启Web服务器以使更改生效。如果你使用的是Apache,请运行:
sudo systemctl restart httpd
如果你使用的是Nginx和PHP-FPM,请运行:
sudo systemctl restart nginx sudo systemctl restart php-fpm
方法二:手动编译安装
- 安装必要的依赖包:
sudo yum install gcc make autoconf libc-dev zlib-devel libxml2-devel openssl-devel bzip2-devel curl-devel libjpeg-devel libpng-devel freetype-devel gmp-devel libmcrypt-devel mariadb-devel aspell-devel recode-devel autoconf
- 下载并解压你想要安装的PHP版本的源代码。访问PHP官方网站(https://www.php.net/releases/),找到你想要的版本,然后运行以下命令(将
替换为你选择的版本号):
wget https://www.php.net/distributions/php-.tar.gz tar -zxvf php- .tar.gz cd php-
- 配置并编译PHP。运行以下命令,根据你的需求启用或禁用相应的模块:
./configure --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --enable-mbstring \ --enable-zip \ --enable-bcmath \ --enable-pcntl \ --enable-ftp \ --enable-exif \ --enable-calendar \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --with-curl \ --with-gd \ --with-gettext \ --with-iconv \ --with-kerberos \ --with-libdir=lib64 \ --with-libxml-dir=/usr \ --with-mysqli \ --with-openssl \ --with-pcre-regex \ --with-pdo-mysql \ --with-freetype-dir=/usr \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --with-zlib-dir=/usr \ --with-bz2 \ --with-mhash \ --enable-fpm \ --with-fpm-user=www-data \ --with-fpm-group=www-data make && sudo make install
- 备份旧版本的PHP配置文件,并将新版本的配置文件复制到相应的目录:
sudo cp /etc/php.ini /etc/php.ini.backup sudo cp /usr/local/php/etc/php.ini-production /usr/local/php/etc/php.ini
-
更新PHP-FPM配置文件(如果使用PHP-FPM)。编辑
/usr/local/php/etc/php-fpm.d/www.conf
文件,将user
和group
更改为www-data
(或者你选择的其他用户和组)。 -
重启Web服务器以使更改生效。如果你使用的是Apache,请运行:
sudo systemctl restart httpd
如果你使用的是Nginx和PHP-FPM,请运行:
sudo systemctl restart nginx sudo systemctl restart php-fpm
- 检查PHP版本。运行以下命令:
php -v
现在,你应该已经成功升级了PHP版本。