2023-12-29 服务器开发-centos-安装php8

摘要:

2023-12-29 服务器开发-centos-安装php8

centos-安装php8

必备条件

  • Minimal CentOS 8 / RHEL 8
  • User with sudo rights
  • Internet Connection

(1) 更新系统

更新系统

复制代码
$ sudo dnf update
$ sudo dnf upgrade

重启系统

复制代码
$ sudo reboot

(2) 启用 EPEL & Remi 软件库

PHP 8 在 CentOS 8 / RHEL 8 包存储库中不可用,我们必须启用 EPEL 和 remi 存储库。

复制代码
 sudo dnf install -y epel-release
 sudo dnf install -y  http://rpms.remirepo.net/enterprise/remi-release-8.rpm
 sudo dnf install -y https://www.zhihu.com/search?q=dnf-utils&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A2947610331%7D

查看可用的 PHP 版本

复制代码
sudo dnf module list php

PHP8-modules-list-centos8

(4) 使用 Remi 模块安装 PHP 8

重置 PHP 模块,并从 remi-8.0 模块安装 PHP 8

复制代码
 sudo dnf module reset php
 sudo dnf module install -y php:remi-8.1
bash 复制代码
yum install -y    php-fpm   php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash

yum install php php-fpm php-mysql -y

Install-php8-remi-repository-centos8-rhel8

验证 PHP 版本

复制代码
[linuxtechi@centos-8 ~]$ php -v
PHP 8.0.0 (cli) (built: Nov 24 2020 17:04:03) (NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
[https://www.zhihu.com/search?q=linuxtechi%40centos-8&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A2947610331%7D ~]$

很好,上面的输出确认 PHP 8 已经安装。这个 PHP 用于 HTTPD web 服务器。

要为 NGINX web 服务器安装 PHP 8,我们必须安装 PHP 8 fpm 包。

复制代码
$ sudo dnf install -y php-fpm

安装完 php-fpm 包,启动并启用其服务

复制代码
$ sudo systemctl enable php-fpm --now

检查 php-fpm 服务状态

复制代码
$ systemctl status php-fpm

Verify-Status-php-fpm-service

PHP 8 扩展也可以通过 dnf 命令安装,示例如下:

复制代码
$ sudo dnf install -y php-{mysqlnd,xml,xmlrpc,curl,gd,imagick,mbstring,opcache,soap,zip}

(5) 为 HTTPD 和 NGINX 配置 PHP 8

HTTPD Web Server

编辑 /etc/php.ini 配置文件,以适用自己的需求。

复制代码
$ sudo vi /etc/php.ini
.........
upload_max_filesize = 32M 
post_max_size = 48M 
memory_limit = 256M 
max_execution_time = 600 
max_input_vars = 3000 
https://www.zhihu.com/search?q=max_input_time&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra=%7B%22sourceType%22%3A%22answer%22%2C%22sourceId%22%3A2947610331%7D = 1000
.........

保存并关闭文件,然后重新启动 web 服务器。

复制代码
$ sudo systemctl restart httpd

Nginx Web Server

编辑 /etc/php-fpm.d/www.conf 配置文件,以适用自己的需求。

复制代码
$ sudo vi /etc/php-fpm.d/www.conf

保存并关闭文件,然后重新启动 php-fpm 服务。

复制代码
$ sudo systemctl restart php-fpm
相关推荐
_itgo12 小时前
意图识别落地方案
运维·docker·容器
mengge.cloud12 小时前
0909华为云计算类综合服务小白实验教程
linux·运维·服务器·网络·华为云·云计算
fpcc13 小时前
c++编程实践—统一初始化
服务器·c++
QYR-分析14 小时前
蓝海赛道高速扩容!全球小型观察ROV市场格局、细分场景与发展趋势分析
大数据·运维·云计算
陈皮糖..14 小时前
从零搭建一个简易 AI 运维问答机器人(RAG + LangChain + Streamlit)
运维·人工智能·ai·langchain·机器人
制造业的搬运工15 小时前
AI服务器背板与传统背板差异:三大设计升级解析
运维·服务器·人工智能·科技·制造·pcb工艺
zhengqweasd15 小时前
Linux网络(一):服务器数据包从网卡到应用程序,完整收包流程详解
linux·服务器·网络
顶点多余15 小时前
仿muduo库实现高并发服务器项目
运维·服务器
脚踏实地,坚持不懈!15 小时前
Linux 6.18.7 内存分配与回收 —— 代码梳理
linux·运维·网络
2601_9623004716 小时前
python在运维上可以干什么,请举几个具体的例子
运维·python·系统管理·网络监控·自动化脚本