使用yum安装php7.x

在CentOS上想快速安装PHP,最好的方法就是yum了,下面是安装步骤(以CentOS 7.x为例):

安装PHP7

安装基础库并启用EPEL和Remi

yum -y install gcc gcc-c++
yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装yum-utils并指定PHP版本

yum -y install yum-utils
# 指定php 7.3
yum-config-manager --enable remi-php73

安装PHP

yum -y install php php-mcrypt php-devel php-cli php-gd php-pear php-curl php-fpm php-mysql php-ldap php-zip php-fileinfo 

启动php并设置成开机启动

systemctl start php-fpm
systemctl enable php-fpm.service

查看php.ini文件的位置可以通过php -ini | grep php.ini命令查看,通常在 /etc/php.ini

在Nginx启用php站点

Nginx安装可以参考 Linux下源码安装Nginx,配置信息如下:

server {
        listen 80; 
        server_name *.testnode.huiyingwei.com;
        root /usr/data/wwwroot;
        charset utf-8;
        index index.html index.php index.htm;

        location ~ \.php$ {
                include fastcgi_params;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

}

常见错误

访问php文件出现404错误

打开 /etc/php-fpm.d/www.conf 文件,逐一排查以下项:

  • 查看listen项的内容与上面的fastcgi_pass一致
  • listen.ownerlisten.group 分别设置成nginx相同的用户名和用户组(可以在nginx.conf 配置文件中查看user配置项)
  • listen.mode 设置成 0750

配置信息如下:

listen = 127.0.0.1:9000
listen.owner = www
listen.group = www
listen.mode = 0750

保存配置文件之后使用 systemctl restart php-fpm 命令重启php


参考资料:
如何在CentOS 7中yum安装PHP 7.3
CentOS 7 下 PHP 7,MySQL 5.7 和 Nginx 1.8 的安装与配置
Nginx throws 404 only on php scripts using php-fpm

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注