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

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 服务配置文件。这些配置文件定义了服务的启动方式、依赖关系、运行参数等。


http://www.kler.cn/a/547454.html

相关文章:

  • P9993 [Ynoi Easy Round 2024] TEST_133 Solution
  • Rust包管理
  • Vue学习笔记4
  • 循环队列知识点及习题
  • C++从入门到实战(四)C++引用与inline,nullptr
  • 青少年编程与数学 02-009 Django 5 Web 编程 13课题、URL分发
  • 【Java 面试 八股文】Spring Cloud 篇
  • 【认证授权FAQ】SSL/TLS证书过期导致的CLS认证失败
  • 联想笔记本电脑摄像头灯亮,但没有画面怎么解决,
  • Python的那些事第二十一篇:Python Web开发的“秘密武器”Flask
  • MATLAB图像处理:图像特征概念及提取方法HOG、SIFT
  • 将Sqlite3数据库挂在内存上处理
  • 老游戏回顾:GOWpsp
  • 【网络安全 | 漏洞挖掘】后端接受非预期参数的故事
  • pgAdmin 4 启动 PSQL Tool
  • export关键字
  • 基于深度学习的消费物联网中安全音乐流量传输方法
  • ROS2服务通信与通信接口
  • 嵌入式 Linux 驱动开发:点灯大法
  • 【Java】ArrayList与LinkedList的性能对比深度解析