当前位置: 首页 > news >正文

Centos安装php-8.0.24.tar

查看系统环境

cat    /etc/redhat-release

预先安装必要的依赖

yum install -y \
wget \
gcc \
gcc-c++ \
autoconf \
automake \
libtool \
make \
libxml2 \
libxml2-devel \
openssl \
openssl-devel \
sqlite-devel

yum   update  

1、下载解压

cd   /data/

wget https://www.php.net/distributions/php-8.0.24.tar.gz 
tar -zxvf php-8.0.24.tar.gz  
sudo  mv  php-8.0.24 php8 

 2、配置编译选项

cd   php8

sudo ./configure \
  --prefix=/data/php-8.0.24 \
  --with-config-file-path=/data/php-8.0.24/etc \
  --enable-mbstring \
  --enable-zip \
  --enable-bcmath \
  --enable-fpm \
  --with-fpm-user=leo \
  --with-fpm-group=leo \
  --with-curl \
  --with-openssl \
  --with-mysqli=mysqlnd \
  --with-pdo-mysql=mysqlnd \
  --with-readline \
  --with-zlib \
  --with-pear \
  --with-libdir=lib64


--prefix:指定安装路径。
--with-config-file-path : 配置文件路径
--enable-fpm:启用PHP-FPM(若需配合Nginx使用)。
--with-fpm-user:  指定用户,不能是root
--with-fpm-group: 指定组,不能是root
其他选项按需启用(如不需要某些扩展可删除对应参数)。

我这里不是用root 用户安装,前面要添加 sudo 

我这里报错,要解决,报一个错误就解决一个,安装yum 安装包。再在命令行用 configure编译

安装EPEL仓库(如果尚未安装)
sudo yum install epel-release

安装libcurl开发包
sudo yum install libcurl-devel

安装 oniguruma 库

sudo yum install oniguruma-devel

安装readline开发包

sudo yum install readline-devel

出现这个页面就是表示预编译成功

2、编译和安装

sudo make

sudo make test
sudo make install

 有警告更新Archive_Tar

pear upgrade Archive_Tar

pear install Archive_Tar

pear config-show

然后重新执行 make && make install

配置php的环境变量

sudo  vi /etc/profile, 在最下面增加一行 export PATH=/data/php-8.0.24/bin:$PATH
 


sudo  source  /etc/profile

php -v   出现以下信息说明成功

3、配置 PHP-FPM

 修改配置文件

# 源码包 php-8.0.24

 cp /data/php8/php.ini-production /data/php-8.0.24/etc/php.ini

cd /data/php-8.0.24/etc

cp php-fpm.conf.default     php-fpm.conf

cd /data/php-8.0.24/etc/php-fpm.d
sudo cp www.conf.default  www.conf

# 修改www.conf文件 # 监听方式为sock ;

listen = 127.0.0.1:9000

listen = php-cgi.sock

listen.owner = leo

listen.group = leo

listen.mode = 0666

将 PHP-FPM 配置为系统服务

 /data/php-8.0.24/sbin/php-fpm  不建议直接用这个启动

sudo vi /etc/systemd/system/php-fpm.service

下面是内容


[Unit]
Description=The PHP FastCGI Process Manager
After=network.target
 
[Service]
Type=simple
PIDFile=/run/php-fpm.pid
ExecStart=/data/php-8.0.24/sbin/php-fpm --nodaemonize --fpm-config /data/php-8.0.24/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

保存后启动 

sudo systemctl start php-fpm

设置php的文件所有者

sudo chown -R leo:leo /data/php-8.0.24/

修改php-cgi.sock 文件的所有者

sudo chown www-data php-cgi.sock

再重新启动  sudo systemctl restart php-fpm

sudo systemctl daemon-reload   //重新加载
sudo systemctl start php-fpm   //启动
sudo systemctl status php-fpm  //状态
sudo systemctl enable php-fpm  //开机自动启动
sudo systemctl restart php-fpm //重新启动 php-fpm 

扩展知识

/etc/systemd/system/ 目录用于存放系统管理员自己创建或修改的 systemd 服务配置文件。这些配置文件定义了服务的启动方式、依赖关系、运行参数等。

相关文章:

  • unity学习41:动画里的曲线curve参数 和 事件 events
  • CAS单点登录(第7版)17.账户注册
  • 深度学习框架探秘|TensorFlow:AI 世界的万能钥匙
  • 安科瑞光伏发电防逆流解决方案——守护电网安全,提升能源效率
  • 算法随笔_51: 表现良好的最长时间段_方法2
  • Java三大特性
  • Uniapp 短视频去水印解析工具开发实现
  • Ubuntu添加桌面快捷方式
  • 2025有哪些关键词优化工具好用
  • XML Schema anyAttribute 元素详解
  • 算法12-贪心算法
  • 解析浏览器中JavaScript与Native交互原理:以WebGPU为例
  • 应用层优秀的共享民宿物联网框架该怎么选?
  • Spring篇--AOP
  • 前端可以不用依赖后端实现导出大数据了
  • C#学习之数据转换
  • python defaultdict用法
  • ios中常见的设计原则和设计模式
  • Hadoop集群安装与配置指南(CentOS 7)
  • 力扣LeetCode: 1742 盒子中小球的最大数量
  • 经济日报:降准降息,提前还房贷划算吗?
  • 上任后首访,德国总理与法国总统举行会晤
  • 金融监管总局:力争实现全国普惠型小微企业贷款增速不低于各项贷款增速
  • 三大交易所多举措支持科创债再扩容,约160亿证券公司科创债有望近期落地
  • 中邮保险斥资8.69亿元举牌东航物流,持股比例达5%
  • 发表“男性患子宫肌瘤”论文的杂志一年发文三千余篇,中介称可提供代写