阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何在CentOS 8上安装PHP

189次阅读
没有评论

共计 2054 个字符,预计需要花费 6 分钟才能阅读完成。

PHP 是最常用的服务器端编程语言之一。许多流行的 CMS 和框架(例如 WordPress,Magento 和 Laravel)都是用 PHP 构建的。

在本指南中,我们将讨论如何在 CentOS 8 上安装 PHP 7.2、7.3 或 7.4。在选择要安装的 PHP 版本之前,请确保您的应用程序支持它。

我们还将向您展示如何将 PHP 与 Nginx 和 Apache 集成。

如何在 CentOS 8 上安装 PHP

在 CentOS 8 上安装 PHP

CentOS 8 是用 PHP 7.2 发布的。该版本支持大多数现代 PHP 应用程序,但从 2019 年 11 月起将不再积极维护。较新的 PHP 版本可以从 Remi 存储库中获得。

启用 Remi 存储库

如果您要安装发行版稳定的 PHP 版本 7.2,请跳过这一步。如果您希望安装 PHP 7.3 或 7.4,则通过以 root 用户或具有 sudo 特权的用户运行以下命令来启用 Remi 存储库:

[linuxidc@localhost www.linuxidc.com]$ sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

如何在 CentOS 8 上安装 PHP

上面的命令还将启用 EPEL 存储库。

安装完成后,请运行以下命令以获取所有可用 PHP 版本的列表:

[linuxidc@localhost www.linuxidc.com]$ sudo dnf module list php

输出将显示所有可用模块的列表,包括关联的 AppStream(软件应用流),版本和安装配置文件。

CentOS-8 - AppStream
Name     Stream          Profiles                      Summary                  
php      7.2 [d]         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 [e]    common [d], devel, minimal    PHP scripting language   

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

如何在 CentOS 8 上安装 PHP

默认的 PHP 模块设置为 PHP 7.2。要安装较新的 PHP 版本,请启用适当的版本:

PHP 7.3

sudo dnf module reset php
sudo dnf module enable php:remi-7.3

PHP 7.4

sudo dnf module reset php
sudo dnf module enable php:remi-7.4

您现在可以在 CentOS 服务器上安装 PHP。

安装 PHP

以下命令将安装 PHP 和一些最常见的 PHP 模块:

sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

PHP 使用 FPM 作为依赖安装,并用作 FastCGI 服务器。启动 FPM 服务,并使它能够在启动时自动启动:

sudo systemctl enable –now php-fpm

配置 PHP 以与 Apache 一起使用

如果您将 Apache 用作 Web 服务器,请使用以下命令重新启动 httpd 服务,您可以使用:

sudo systemctl restart httpd

配置 PHP 以与 Nginx 一起使用

默认情况下,PHP FPM 以用户 apache 的身份运行。为避免权限问题,我们将用户更改为 nginx。为此,请编辑以黄色突出显示的行:

sudo nano /etc/php-fpm.d/www.conf

 …
user = nginx

group = nginx

确保 /var/lib/php 目录具有正确的所有权:

chown -R root:nginx /var/lib/php

完成后,重新启动 PHP FPM 服务:

sudo systemctl restart php-fpm

接下来,编辑 Nginx 虚拟主机指令,并添加以下位置块,以便 Nginx 可以处理 PHP 文件:

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 服务:

sudo systemctl restart nginx

总结

可从默认的 CentOS 8 存储库中安装 PHP 7.2。如果要安装最新版本,则需要启用 Remi 存储库。

如果您有任何疑问或反馈,请随时发表评论。

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计2054字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中