在生产环境安装PHP8.4,适配 CentOS/RHEL 和 Ubuntu/Debian 两大系统。

一、先安装编译依赖(必须)

  1. Ubuntu/Debian 系统

    sudo apt update && sudo apt upgrade -y
    sudo apt install -y build-essential libtool gcc g++ make autoconf \
    libcurl4-openssl-dev libssl-dev libxml2-dev libpng-dev libjpeg-dev \
    libfreetype6-dev libonig-dev libzip-dev libsqlite3-dev libwebp-dev \
    libxpm-dev libpq-dev libedit-dev
    
  2. CentOS/RHEL/Rocky Linux 系统

    sudo yum install -y epel-release
    sudo yum install -y gcc gcc-c++ make autoconf libtool \
    openssl-devel libxml2-devel libpng-devel libjpeg-turbo-devel \
    freetype-devel oniguruma-devel libzip-devel sqlite-devel \
    libwebp-devel libXpm-devel postgresql-devel libedit-devel
    

二、下载 PHP 8.4 源码

# 进入源码目录
cd /usr/local/src

# 下载 PHP 8.4 最新版
wget https://www.php.net/distributions/php-8.4.10.tar.gz

# 解压
tar -zxvf php-8.4.10.tar.gz
cd php-8.4.10

三、编译配置(最关键,带常用扩展)

./configure \
--prefix=/usr/local/php84 \
--with-config-file-path=/usr/local/php84/etc \
--with-config-file-scan-dir=/usr/local/php84/etc/php.d \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-mysqlnd \
--with-pdo-mysql \
--with-pdo-sqlite \
--enable-mbstring \
--enable-gd \
--with-jpeg \
--with-webp \
--with-freetype \
--with-openssl \
--with-curl \
--with-zip \
--enable-bcmath \
--enable-intl \
--enable-exif \
--enable-ftp \
--enable-soap \
--enable-sockets \
--enable-pcntl \
--enable-posix \
--enable-calendar \
--with-libedit \
--enable-opcache

四、编译 & 安装

# 编译(-j 后面写 CPU 核心数,速度更快)
make -j$(nproc)

# 安装
make install

编译完成后,PHP 8.4 会安装在: /usr/local/php84

五、配置环境变量(全局使用 php 命令)

echo 'export PATH=/usr/local/php84/bin:$PATH' >> /etc/profile
source /etc/profile

测试是否成功,出现 PHP 8.4.x 就成功了

php -v

六、配置 php.ini & php-fpm

  1. 复制配置文件
    cp php.ini-production /usr/local/php84/etc/php.ini
    cp /usr/local/php84/etc/php-fpm.conf.default /usr/local/php84/etc/php-fpm.conf
    cp /usr/local/php84/etc/php-fpm.d/www.conf.default /usr/local/php84/etc/php-fpm.d/www.conf
    
  2. 创建 www 用户(php-fpm 运行用户)
    useradd -M -s /sbin/nologin www
    
  3. 启动 php-fpm
    /usr/local/php84/sbin/php-fpm
    
  4. 设置开机自启:
    echo '/usr/local/php84/sbin/php-fpm' >> /etc/rc.local
    chmod +x /etc/rc.local
    

七、安装pear工具,支持pecl安装php扩展

cd /usr/local/src
wget http://pear.php.net/go-pear.phar
php go-pear.phar
pecl version

八、内存优化(低内存服务器专用)

如果你服务器内存 < 4G,直接用这个低内存配置:

  1. 打开 php.ini
    vim /usr/local/php84/etc/php.ini
    
  2. 修改:
    memory_limit = 256M
    opcache.enable=1
    opcache.memory_consumption=64
    opcache.max_accelerated_files=4000
    opcache.revalidate_freq=60
    
  3. 重启 php-fpm:
    pkill php-fpm && /usr/local/php84/sbin/php-fpm
    

常用命令

php --ini
php -v                # 查看版本
php -m                # 查看已装扩展
pkill php-fpm          # 关闭 fpm
/usr/local/php84/sbin/php-fpm  # 启动 fpm
pecl install php扩展包名
echo "extension=php扩展包名.so" >> /usr/local/php84/etc/php.ini

results matching ""

    No results matching ""