最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
ubuntu如何编译php-fpm
时间:2026-08-13 09:11:50 编辑:袖梨 来源:一聚教程网
在 Ubuntu 上编译 php-fpm,通常是为了使用特定版本或开启某些官方仓库没有的扩展。下面给你一套从源码编译 PHP 并启用 php-fpm 的完整流程(以 PHP 8.1 为例,其他版本同理)。

一、准备编译环境
1. 更新系统
sudo apt updatesudo apt upgrade -y
2. 安装编译依赖
sudo apt install -y build-essential
pkg-config
libxml2-dev
libsqlite3-dev
libcurl4-openssl-dev
libpng-dev
libjpeg-dev
libonig-dev
libzip-dev
libssl-dev
libreadline-dev
libpq-dev
libfreetype6-dev
autoconf
automake
libtool
如果你需要更多扩展(如 LDAP、Redis、GD、IMAP 等),需额外安装对应 dev 包。
二、下载 PHP 源码
1. 下载源码(示例:PHP 8.1.x)
cd /usr/local/srcsudo wget https://www.php.net/distributions/php-8.1.27.tar.gz
sudo tar -zxvf php-8.1.27.tar.gz
cd php-8.1.27
你也可以换成其他版本:
https://www.php.net/distributions/php-8.2.xx.tar.gzhttps://www.php.net/distributions/php-8.3.xx.tar.gz
三、配置编译参数(关键)
1. 生成 configure
./configure --prefix=/usr/local/php
--enable-fpm
--with-fpm-user=www-data
--with-fpm-group=www-data
--enable-mbstring
--enable-mysqlnd
--with-mysqli
--with-pdo-mysql
--with-openssl
--with-curl
--with-zip
--with-zlib
--enable-gd
--with-freetype
--with-jpeg
--enable-fpm 是编译 php-fpm 的关键
2. 常见可选参数
四、编译并安装
make -j$(nproc)sudo make install
安装完成后:
/usr/local/php/bin/php -v五、配置 php-fpm
1. 复制默认配置
cd /usr/local/php/etcsudo cp php-fpm.conf.default php-fpm.conf
sudo cp php-fpm.d/www.conf.default php-fpm.d/www.conf
2. 编辑 www.conf(可选)
sudo nano php-fpm.d/www.conf常见修改:
user = www-datagroup = www-data
listen = /run/php/php-fpm.sock
listen.owner = www-data
listen.group = www-data
六、创建 systemd 服务
1. 创建服务文件
sudo nano /etc/systemd/system/php-fpm.service内容:
[Unit]Description=PHP FastCGI Process Manager
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize
Restart=always
[Install]
WantedBy=multi-user.target
2. 启动 php-fpm
sudo systemctl daemon-reloadsudo systemctl start php-fpm
sudo systemctl enable php-fpm
查看状态:
systemctl status php-fpm七、验证 php-fpm
ps aux | grep php-fpm或在 Nginx 中测试:
location ~ .php$ {fastcgi_pass unix:/run/php/php-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
八、常见问题
1. 缺少扩展
sudo apt install libxxx-dev然后重新编译。
2. 端口 / sock 冲突
sudo netstat -plnt | grep php九、总结
核心步骤:
- 安装依赖
./configure --enable-fpmmake && make install- 配置 php-fpm
- systemd 管理
如果你愿意,可以告诉我:
- 你用的是 Ubuntu 20.04 / 22.04 / 24.04
- 要编译 PHP 7.x / 8.x
- 是否需要 Nginx / Apache
- 是否要 OpenSSL 3 / 特定扩展
我可以给你一份完全针对你环境的编译方案。
相关文章
- 华为路由器信号强度设置方法(华为路由器信号强度如何设置) 08-15
- 鸣潮选西格莉卡声骸还是选别的 08-15
- 杀戮尖塔2如何打全部BOSS 08-15
- 192.168.0.1登陆默认网关设置入口-192.168.0.1登陆入口WiFi密码修改直达 08-15
- mcjs我的世界网页版入口-mcjs在线版打开即玩无需下载 08-15
- 华为子母路由器卡顿如何解决(华为子母路由器卡顿解决方法) 08-15