红帽9中nginx-源码编译php

什么是PHP-FPM? PHP-FPM(FastCGI Process Manager: FastCGI进程管理器)是一个实现了Fastcgi的程序,并且提供进程管理的功能。 进程包括master进程和worker进程。master进程只有一个,负责监听端口,接受来自web server 的请求 worker进程一般会有多个,每个进程中会嵌入一个PHP解析器,进行PHP代码的处理。

1.先源码编译nginx,root底下存在最新版模块

2.进入nginx-1.26.1的目录,执行编译安装

复制代码
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx  --with-http_ssl_module --with-http_v2_module --with-http_realip_module  --with-http_gzip_static_module  --with-http_stub_status_module  --with-pcre --with-stream  --with-stream_ssl_module

3.安装文件

4.检测参数nginx安装是否成功

5.对php源码编译,对软件包进行解压

root@nginx-node1 \~# tar zxf php-8.3.9.tar.gz

4.利用yum解决php依赖

root@Nginx \~# yum install -y bzip2 systemd-devel libxml2-devel sqlite-devel libpng-devel libcurl-devel oniguruma-devel

但是缺失软件包

寻找软件包命令

复制代码
[root@nginx-node1 ~]# yum search oniguruma
[root@nginx-node1 ~]# yum whatprovides */oniguruma*

如果代码搜索不到可以使用---阿里云开源软件镜像站进行搜索

5.进入php目录,对php进行源码安装

复制代码
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-iconv --with-mhash --with-zlib --with-openssl --enable-mysqlnd --with-mysqli --with-pdo-mysql --disable-debug --enable-sockets --enable-soap --enable-xml --enable-ftp --enable-gd  --enable-exif  --enable-mbstring --enable-bcmath --with-fpm-systemd

检测发现还缺失libsystemd包

安装libcurl-devel-7.76.1-19.el9.x86_64软件包

root@localhost php-8.3.9# yum install libcurl-devel-7.76.1-19.el9.x86_64 -y

使用源码再次安装,检测发现还缺失sqlite3包

复制代码
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-iconv --with-mhash --with-zlib --with-openssl --enable-mysqlnd --with-mysqli --with-pdo-mysql --disable-debug --enable-sockets --enable-soap --enable-xml --enable-ftp --enable-gd  --enable-exif  --enable-mbstring --enable-bcmath --with-fpm-systemd

安装 sqlite-devel.x86_64软件包

root@localhost php-8.3.9# yum install sqlite-devel.x86_64 -y

使用源码再次安装,检测发现还缺失libpng包

复制代码
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-iconv --with-mhash --with-zlib --with-openssl --enable-mysqlnd --with-mysqli --with-pdo-mysql --disable-debug --enable-sockets --enable-soap --enable-xml --enable-ftp --enable-gd  --enable-exif  --enable-mbstring --enable-bcmath --with-fpm-systemd

安装libpng-devel.x86_64软件包

root@localhost php-8.3.9# yum install libpng-devel.x86_64 -y

使用源码再次安装,检测发现还缺失oniguruma包

复制代码
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-iconv --with-mhash --with-zlib --with-openssl --enable-mysqlnd --with-mysqli --with-pdo-mysql --disable-debug --enable-sockets --enable-soap --enable-xml --enable-ftp --enable-gd  --enable-exif  --enable-mbstring --enable-bcmath --with-fpm-systemd

在阿里云开源软件镜像站获取软件包的下载地址

使用yum进行安装

root@localhost \~# yum install oniguruma-devel-6.9.6-1.el9.5.x86_64.rpm

再次使用源码进行编译

复制代码
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-curl --with-iconv --with-mhash --with-zlib --with-openssl --enable-mysqlnd --with-mysqli --with-pdo-mysql --disable-debug --enable-sockets --enable-soap --enable-xml --enable-ftp --enable-gd  --enable-exif  --enable-mbstring --enable-bcmath --with-fpm-systemd

源码编译安装成功后,安装软件

root@localhost php-8.3.9# make && make install

相关推荐
志栋智能6 小时前
运维超自动化的版本控制与回滚机制
运维·自动化
中云DDoS CC防护蔡蔡6 小时前
DDOS和CC攻击谁更可怕
运维·服务器·经验分享·网络安全·ddos
Ruiery6 小时前
Linux 6.6内核内存管理深度解析(十六):mmap — 用户态“申请内存“的真相
linux·运维·服务器
ClickHouseDB6 小时前
ClickHouse Cloud 与 Snowflake 实时性价比对比:CostBench 测试中的 412 倍差距来
运维·数据库·系统架构
欧米欧7 小时前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery7 小时前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
todoitbo7 小时前
群晖NAS部署JmalCloud:Docker安装、文件管理、博客与公网访问完整教程
运维·docker·容器
时间售卖铺7 小时前
触发器与函数实战:MySQL高效编程秘诀
运维·数据库·mysql·云原生
前端精髓8 小时前
调用大模型API
运维·服务器·microsoft
跨境小彭8 小时前
Temu 全托管模式下,SKU 利润核算的实践复盘
大数据·运维·人工智能·自动化·temu