前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在 CentOS 8 上安装 PHP

如何在 CentOS 8 上安装 PHP

作者头像
雪梦科技
发布2020-05-11 16:57:11
2.1K0
发布2020-05-11 16:57:11
举报
文章被收录于专栏:ITCoder

PHP 是世界上使用广泛的服务端编程语言之一。很多著名的 CMS 和框架,例如 WordPress, Magento, 和 Laravel 都是基于 PHP 构建的。

在这篇指南中,我们将会讨论如何在 CentOS 8 上安装 PHP 7.2, 7.3, 或者 7.4。在选择安装哪个版本 PHP 之前,请确认你的应用支持它。

一、在 CentOS 8 上安装 PHP

CentOS 8 是和 PHP7.2 一起发布的。这个版本支持大部分现代的 PHP 应用,但是到 2019 年 11 月将不在被维护。更新的 PHP 版本请浏览:Remi repository

一、 启用 Remi 源仓库

如果你要安装 PHP 的稳定版本 7.2,请忽略这一步。否则,如果你要安装 PHP7.3 或者 7.4,请使用 root 或者其他有 sudo 权限的用户身份运行下面的命令,启用 Remi 源仓库:

代码语言:javascript
复制
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

上面的命令同样也能启用EPEL 软件源仓库

一旦上面的安装完成,运行下面的命令,获取所有可用的 PHP 版本:

代码语言:javascript
复制
sudo dnf module list php

输出将会显示一系列所有可用的模块,包括关联的版本,和安装剖面。

代码语言:javascript
复制
Last metadata expiration check: 0:02:11 ago on Fri 18 Oct 2019 08:31:43 PM UTC.
CentOS-8 - AppStream
Name    Stream       Profiles                     Summary
php     7.2 [d][e]   common [d], devel, minimal   PHP scripting language

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name    Stream       Profiles                     Summary
php     remi-7.2     common [d], devel, minimal   PHP scripting language
php     remi-7.3     common [d], devel, minimal   PHP scripting language
php     remi-7.4     common [d], devel, minimal   PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

默认的 PHP 模块被设置为 PHP 7.2 。 想要安装最新的 PHP 发行版,启用合适的版本:

PHP 7.3

代码语言:javascript
复制
sudo dnf module reset php
sudo dnf module enable php:remi-7.3

PHP 7.4

代码语言:javascript
复制
sudo dnf module reset php
sudo dnf module enable php:remi-7.4

你现在准备在你的 CentOS 服务器上安装 PHP。

二、安装 PHP

下面的命令将会安装 PHP 和其他一些最普通的 PHP 模块:

代码语言:javascript
复制
sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

FPM 被作为 PHP 依赖安装,并且被用作 FastCGI 服务器。启动 FPM 服务器并且启用开机启动:

代码语言:javascript
复制
sudo systemctl enable --now php-fpm

2.1、配置 PHP,适配 Apache

如果你正在使用 Apache 作为你的网页服务器,使用下面的命令重启httpd服务:

代码语言:javascript
复制
sudo systemctl restart httpd

2.2、配置 PHP,适配 Nginx

默认情况下,PHP FPM 以 apache 用户运行。为了避免权限问题,我们将用户改为nginx。想要这么做,编辑下面的内容:

代码语言:javascript
复制
sudo nano /etc/php-fpm.d/www.conf
代码语言:javascript
复制
...
user = nginx
...
group = nginx

确保/var/lib/php目录拥有正确的用户身份:

代码语言:javascript
复制
chown -R root:nginx /var/lib/php

一旦修改好,重启 PHP FPM 服务:

代码语言:javascript
复制
sudo systemctl restart php-fpm

下一步,编辑 Nginx 虚拟主机指令,添加下面的代码块以便 Nginx 可以处理 PHP 文件:

代码语言:javascript
复制
server {

    # . . . other code

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

想要新的配置起作用,重启 Nginx 服务:

代码语言:javascript
复制
sudo systemctl restart nginx

三、结论

PHP 7.2 可以从默认的 CentOS 8 源仓库中安装。如果你想要安装最近的版本,你可以启用 Remi 源仓库。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年12月07日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、在 CentOS 8 上安装 PHP
  • 二、安装 PHP
    • 2.1、配置 PHP,适配 Apache
      • 2.2、配置 PHP,适配 Nginx
      • 三、结论
      相关产品与服务
      轻量应用服务器
      轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门软件打包实现一键构建应用,提供极简上云体验。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档