在 CentOS 系统上安装 PHP 是一个常见的任务,特别是对于开发人员和系统管理员来说,以下将详细介绍如何在 CentOS 上安装 PHP,包括步骤、所需命令和注意事项。
一、CentOS 7 上安装 PHP 8.1
1、安装 EPEL 仓库:EPEL (Extra Packages for Enterprise Linux) 提供了 CentOS 和其他企业级 Linux 发行版所需的额外软件包。
sudo yum install y https://dl.fedoraproject.org/pub/epel/epelreleaselatest7.noarch.rpm
2、安装 Remi's RPM 仓库:Remi's RPM 仓库提供了最新版本的 PHP。
sudo yum install y https://rpms.remirepo.net/enterprise/remirelease7.rpm
3、启用 PHP 8.1 仓库:使用yumconfigmanager
启用 Remi's PHP 8.1 仓库。
sudo yumconfigmanager enable remiphp81
4、安装 PHP 8.1 及其常用扩展:现在可以安装 PHP 8.1 及其常用的扩展。
sudo yum install php phpcli phpfpm phpjson phpcommon phpmysqlnd phpzip phpgd phpmbstring phpcurl phpxml phppear phpbcmath
5、验证 PHP 安装:使用以下命令检查 PHP 的版本。
php v
二、CentOS 8 上安装 PHP 7.4
1、添加 EPEL 和 REMI 库:安装需要 EPEL 和 REMI 库。
sudo yum y install https://dl.fedoraproject.org/pub/epel/epelreleaselatest8.noarch.rpm sudo yum y install https://rpms.remirepo.net/enterprise/remirelease8.rpm
2、在 CentOS 8 上安装 PHP 7.4:添加相关的库后,启用 PHP 7.4 的 Remi 模块并进行安装。
sudo dnf module install php:remi7.4
3、安装 PHP FPM:FPM 被作为 PHP 依赖安装,并且被用作 FastCGI 服务器。
sudo systemctl enable now phpfpm
4、配置 PHP,适配 Apache:如果正在使用 Apache 作为你的网页服务器,使用下面的命令重启httpd服务。
sudo systemctl restart httpd
5、配置 PHP,适配 Nginx:默认情况下PHP FPM 以 apache 用户运行,为了避免权限问题,我们将用户改为nginx,编辑下面的内容。
sudo nano /etc/phpfpm.d/www.conf
修改以下内容:
user = nginx group = nginx
确保/var/lib/php目录拥有正确的用户身份。
chown R root:nginx /var/lib/php
6、重启 PHP FPM 服务:一旦修改好,重启 PHP FPM 服务。
sudo systemctl restart phpfpm
7、编辑 Nginx 虚拟主机指令:添加下面的代码块以便 Nginx 可以处理 PHP 文件。
server { location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/phpfpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
8、重启 Nginx 服务:想要新的配置起作用,重启 Nginx 服务。
sudo systemctl restart nginx
三、常见问题及解答
1、问题:如何查看已安装的 PHP 版本?
答:要查看已安装的 PHP 版本,可以使用以下命令:
php v
2、问题:如何卸载已安装的 PHP?
答:要卸载已安装的 PHP,可以使用以下命令:
sudo yum remove y php
是在 CentOS 系统上安装 PHP 的详细步骤,通过这些步骤,你可以顺利地在你的 CentOS 系统上安装并配置 PHP,如果你遇到任何问题,可以参考相关文档或寻求社区的帮助。