千家信息网

ubuntu如何编译安装PHP7.4

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章给大家分享的是有关ubuntu如何编译安装PHP7.4的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。下载PHP7.4源码包wget https://www.php.
千家信息网最后更新 2026年11月03日ubuntu如何编译安装PHP7.4

这篇文章给大家分享的是有关ubuntu如何编译安装PHP7.4的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

下载PHP7.4源码包

wget https://www.php.net/distributions/php-7.4.26.tar.gz

解压

tar -zxvf php-7.4.26.tar.gz

安装PHP依赖库

apt-get install libxml2 libxml2-dev sqlite3 libsqlite3-dev libcurl3-dev libxml-dev

运行./configure

# cd 到php源码目录./configure --prefix=/usr/local/php7 \--with-config-file-path=/etc \--with-fpm-user=test \--with-fpm-group=test \--with-curl --enable-fpm

注意:这里只有很少的扩展,因为多的话编译时间会很长。只是用于测试编译安装php,所以就没有加入很多扩展。如果安装完成后,后续想要加入更多扩展,又忘记了之前的编译参数,可以在源码目录 cat config.nice 就可以看到以前的编译参数。然后加入新的参数重新编译(别忘了先安装扩展依赖库)。
运行make && make install
运行make install 可加入 -j 参数,表示同时多个job工作,编译速度会快一些。

make install -j 2

设置PHP环境变量

1. 打开文件

vim /etc/profile

2. 写入内容

PATH=$PATH:/usr/local/php7/binexport PATH

3. 使环境变量立即生效

source /etc/profile

4. 输入php -v 没有报错,环境变量设置成功

配置文件

# 修改配置文件 cd /usr/local/php7/etc cp php-fpm.conf.default php-fpm.conf cp php-fpm.d/www.conf.default php-fpm.d/www.conf  # 修改pid文件位置vim php-fpm.conf# 添加这行pid = /run/php-fpm.pid# 创建php-fpm软链接  ln -s /usr/local/php7/sbin/php-fpm /usr/sbin/php-fpm

启停php-fpm

# 启动 /usr/sbin/php-fpm # 关闭 kill -INT `cat /run/php-fpm.pid` # 重启 kill -USR2 `cat /run/php-fpm.pid`

错误处理

ERROR: [pool www] cannot get uid for user 'test'

1. 原因:由于前面编译的时候设置了,php-fpm的用户和用户组是test【随便设置的】(--with-fpm-user=test --with-fpm-group=test),实际上这个用户跟本不存在,有两种处理办法:

  • 创建用户和用户组为test

  • 修改php-fpm.conf将用户和用户组设置为跟nginx或者apache用户组一样即可

# 打开php-fpm.conf vim /usr/local/php7/etc/php-fpm.conf# 找到位置修改为(我nignx用户组是 www-data user = www-data) group = www-data

2. ERROR: failed to retrieve TCP_INFO for socket: Protocol not available (92)

原因:我用的是windows下的linux子系统(ubuntu系统),不是完全虚拟的系统,会有一点问题,但是不影响。在宿主机任务管理器查看php-fpm已经启动了。

解决办法:修改php-fpm.conf

# 方法1: listen = /run/php-fpm.sock # 方法2 设置 log_level = alert

添加守护进程

# PHP源码里有自带的服务脚本,只需要复制到/etc/init.d 目录,加上执行权限就可以了。# 要注意保持 /usr/local/php7/etc/php-fpm.conf 里面的 pid 文件位置是初始值。原来的是 pid = run/php-fpm.pid# 在源码目录执行cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod +x /etc/init.d/php-fpmsystemctl daemon-reload# 使用方法与上面相同,也可以使用 systemctlservice php-fpm start service php-fpm stop service php-fpm restart service php-fpm status# 或者systemctl start php-fpmsystemctl stop php-fpmsystemctl restart php-fpmsystemctl status php-fpm

感谢各位的阅读!关于"ubuntu如何编译安装PHP7.4"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

编译 用户 文件 源码 用户组 参数 目录 位置 内容 变量 方法 更多 环境 运行 办法 原因 篇文章 系统 处理 配置 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中智农互联网科技 上海睿民互联网科技有限公司 广州淘业互联网络科技 互联网巨头反垄断金融科技 互联网与科技发展 上海挚品互联网科技 科技互联网公司logo 丰台科技园 互联网公司 衡水科技产业互联网平台 互联网科技热点资讯 团飞科技与伯堂互联网服务平台 智腾互联网科技有限公司 语蝶互联网科技有限公司 广州新华互联网科技学校电竞方面 山东子淼互联网科技有限公司 元气玛特互联网科技公司是外包吗 互联网风格科技公司名称 江苏互联网智能科技产品出厂价 上海互联网科技园景观 广州全民伙伴互联网科技有限公司 互联网科技公司排名 大白互联网科技 互联网金融和金融科技 太原新华互联网科技学校怎么样 天速互联网络科技有限公司 互联网科技实习生岗位职责 科技互联网大厂 广州富喜互联网络科技 中国互联网公司的科技投入 科技互联网经济论坛
0