请关注本头条号,每天坚持更新原创干货技术文章。
如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习
1. 前言
本文主要讲解如何在CentOS8或RHEL8上安装PHP。如何在CentOS8或者RHEL8系统上安装PHP 7.2 ?如何在CentOS8/RHEL8上安装PHP 7.1 。Red Hat Enterprise Linux 8是用PHP 7.2发布的,而不是用RHEL 7发布的PHP 5.4。
如何在CentOS8或RHEL8上安装PHP最新版
PHP 7.2中一些最显著的变化是:
- 默认使用FastCGI进程管理器(FPM)。这对于使用线程化http是安全的
- 当更改max_execution_timeconfiguration变量时,它的值应该与httpd ProxyTimeout设置相匹配。
- PHP脚本警告和错误不再被记录到/var/log/httpd/error.log中,它们现在被记录到/var/log/ php-fpm/www-error.log文件中。
- php-flag和php_value变量/etc/php-fpm.d/*.conf。池中应设置配置文件它们不再在httpd配置文件中配置。
- 运行PHP脚本的用户现在在FPM池配置文件中配置/etc/php-fpm/d/www.conf。默认用户是apache。
- 无论何时安装新扩展名或更改PHP配置文件,都需要重新启动php-fpm服务。
2. 从PHP 7.2中移除的扩展特性
下面是PHP 7.2中已经弃用的扩展特性
- memcache
- zip
- mysql(注意mysqli和pdo_mysql扩展仍然可用,由php-mysqlnd包提供)
- aspell
PHP 7.2和PHP 7.1都应该在AppStream存储库中可用:
sudo yum repolist
您可以通过在终端中运行以下命令来确认启用和默认的PHP模块。
sudo yum module list | grep php
php 7.1 devel, minimal, default [d] PHP scripting language php 7.2 [d][e] devel, minimal, default [d] PHP scripting language
3. 在RHEL8或CentOS8上安装PHP 7.2
在RHEL8或CentOS8上安装PHP 7.2
运行以下命令在RHEL8或CentOS8上安装PHP 7.2
sudo yum module install php:7.2
上面的命令将安装许多PHP扩展,以及不同集成所需的扩展。
安装完成后,使用以下命令检查您的PHP版本:
php -v
PHP 7.2.11 (cli) (built: Oct 9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
如上面的输出所示,RHEL8系统上有PHP 7.2.11。
4. 启动和配置php-fpm服务
现在激活php-fpm服务
sudo systemctl enable --now php-fpm
检查服务状态:
systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2019-03-11 00:23:55 EAT; 3min 16s ago
Main PID: 32105 (php-fpm)
Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec"
Tasks: 6 (limit: 11510)
Memory: 24.1M
CGroup: /system.slice/php-fpm.service
├─32105 php-fpm: master process (/etc/php-fpm.conf)
├─32106 php-fpm: pool www
├─32107 php-fpm: pool www
├─32108 php-fpm: pool www
├─32109 php-fpm: pool www
└─32110 php-fpm: pool www
Mar 11 00:23:55 rhel8.local systemd[1]: Starting The PHP FastCGI Process Manager…
Mar 11 00:23:55 rhel8.local systemd[1]: Started The PHP FastCGI Process Manager.
注意,在默认情况下,PHP FPM服务监听Unix套接字/run/php-fpm/www.sock
5. 安装 PHP 7.2 扩展
语法:
sudo yum install php-
下面是安装标准PHP扩展的例子。
sudo yum -y install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-json
6. 如何在CentOS8或者RHEL8上安装PHP 7.1
如何在CentOS8或者RHEL8上安装PHP 7.1
如果希望安装PHP 7.1,也可以在AppStream存储库中找到它。使用以下命令安装PHP 7.1:
sudo yum module install php:7.1
验证PHP版本:
php -v
PHP 7.1.20 (cli) (built: Jul 19 2018 06:17:27) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
7. 在CentOS8或者RHEL8系统中切换PHP版本
您可以使用以下命令轻松切换回PHP 7.2:
sudo yum module install php:7.2
8. 在CentOS8或RHEL8系统上配置防火墙
为了使http服务正常运行,需要在在CentOS8或RHEL8上配置防火墙,允许http流量。
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
9. 在CentOS8或者RHEL8系统中测试PHP是否安装成功
最后,让我们测试一下,以确认PHP是否按预期工作。安装Apache HTTP服务器使用:
sudo yum module install httpd
设置httpd服务自启动并立即运行。
sudo systemctl enable --now httpd
在CentOS8或RHEL8系统上创建PHP测试页面
echo ' |