尝鲜未来:在 Debian 13 上手动编译安装 PHP 8.5 (RC2)
PHP 8.5 带来了许多令人兴奋的新特性,例如管道操作符 (|>
) 和对只读属性 (Readonly Properties) 的增强等。虽然正式版 (GA) 预计于 2025 年 11 月发布,但作为开发者,我们完全可以提前在 Debian 13 系统上编译其最新的 Release Candidate (RC) 版本,抢先体验未来的力量。
本文将指导您完成在 Debian 13 上手动编译、安装和配置 PHP 8.5 FPM 的整个过程。
💻 准备编译环境和依赖
手动编译需要安装大量的构建工具和 PHP 运行时依赖的开发库。
打开终端,执行以下命令一次性安装所有必要的依赖项,包括 build-essential
、git
以及各种库的开发包(例如 SSL、cURL、SQLite、Oniguruma 等):
sudo apt update
sudo apt install git build-essential autoconf bison re2c libxml2-dev libssl-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libzip-dev pkg-config libsqlite3-dev libonig-dev -y
⬇️ 获取 PHP 8.5 源代码
我们将使用 git
来克隆 PHP 官方仓库,并切换到最新的 PHP 8.5 RC2 标签。
# 克隆 PHP 源代码仓库
git clone https://github.com/php/php-src.git
# 进入源代码目录
cd php-src/
# 切换到 PHP 8.5.0RC2 标签(请根据实际可用的最新版本调整)
git checkout php-8.5.0RC2
🛠️ 配置与编译
现在,我们准备配置 PHP 8.5。我们选择将 PHP 安装到 /usr/local/php85
目录,以避免与系统自带的 PHP 版本冲突。
1. 生成配置脚本
如果通过 Git 获取,需要先运行 buildconf
生成 configure
脚本:
./buildconf --force
2. 执行配置
使用您提供的配置选项,启用 FPM、MySQLi、cURL、mbstring 等常用扩展。
./configure \
--prefix=/usr/local/php85 \
--with-config-file-path=/usr/local/php85/etc \
--enable-fpm \
--with-mysqli \
--with-pdo-mysql \
--with-curl \
--with-zlib \
--with-openssl \
--enable-mbstring \
--enable-zip \
--enable-exif
3. 编译与安装
使用 make -j$(nproc)
利用所有 CPU 核心加速编译过程,然后执行安装。
# 编译
make -j$(nproc)
# 安装到指定目录
sudo make install
4. 验证安装结果
安装完成后,检查 PHP 8.5 的版本:
/usr/local/php85/bin/php -v
您应该能看到类似 PHP 8.5.0RC2 (cli)
的输出。
⚙️ 配置 PHP-FPM
为了让 PHP 8.5 能够服务于 Web 请求,我们需要配置 PHP-FPM 服务。
1. 复制配置文件
将默认的 FPM 配置文件复制到安装目录的 /etc/
文件夹下。
# 复制 FPM 主配置文件
sudo cp sapi/fpm/php-fpm.conf /usr/local/php85/etc/php-fpm.conf
# 复制 FPM 池配置文件 (默认池 www)
# 假设 /usr/local/php85/etc/php-fpm.d/ 目录不存在,请先创建
sudo mkdir -p /usr/local/php85/etc/php-fpm.d
sudo cp sapi/fpm/www.conf.default /usr/local/php85/etc/php-fpm.d/www.conf
2. 解决用户组错误
在启动 FPM 之前,需要确保 FPM 配置文件(通常是 www.conf
)中指定的运行用户和用户组是存在的。默认配置通常使用 nobody
。
如果您的系统上缺少 nobody
用户组,请手动创建它:
# 创建 nobody 用户组(如果缺失)
sudo groupadd nobody
# 创建 nobody 用户,并禁止其登录
sudo useradd -g nobody -s /sbin/nologin nobody
注意: 生产环境中,建议修改
/usr/local/php85/etc/php-fpm.d/www.conf
,将user
和group
设置为专用的 Web 用户(如www-data
或nginx
)。
▶️ 启动 PHP 8.5 FPM 服务
1. 测试配置
在正式启动前,先使用 -t
选项检查 FPM 配置文件是否有误:
/usr/local/php85/sbin/php-fpm -t --fpm-config /usr/local/php85/etc/php-fpm.conf
如果看到 “configuration file … test is successful” 的提示,即可继续。
2. 启动 FPM
以管理员权限运行 FPM 可执行文件来启动服务:
sudo /usr/local/php85/sbin/php-fpm --fpm-config /usr/local/php85/etc/php-fpm.conf
至此,您的 PHP 8.5 FPM 服务已在后台运行。您可以通过 ps aux | grep php-fpm
来确认进程是否启动。
3. 创建软链接(可选)
为了方便使用,您可以创建一个软链接,在任何位置直接使用 php85
命令:
sudo ln -s /usr/local/php85/bin/php /usr/bin/php85
现在,您可以在终端中直接运行 php85 -v
进行调用。
恭喜您!您已经成功在 Debian 13 系统上编译并启动了 PHP 8.5 的最新开发版本,可以开始您的新特性探索之旅了。