CentOS环境下启动PHP网站服务的详细步骤与配置指南

在当今的互联网时代,搭建一个高效、稳定的PHP网站服务是许多开发者和企业的需求。CentOS作为一款广泛使用的Linux发行版,因其稳定性和安全性而备受青睐。本文将详细讲解在CentOS环境下如何从零开始安装和配置PHP网站服务,涵盖从基础环境准备到最终测试的全过程。

一、准备工作

    系统环境

    • 操作系统:CentOS Stream 8
    • 用户权限:建议使用具有sudo权限的用户进行操作

    关闭SELinux和firewalld

    • SELinux可能会PHP和Web服务器的运行,建议关闭:
      
      sudo setenforce 0
      sudo sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
      
    • 关闭firewalld防火墙:
      
      sudo systemctl stop firewalld
      sudo systemctl disable firewalld
      

    更新系统

    • 确保系统包是最新的:
      
      sudo dnf update -y
      

二、安装EPEL和Remi仓库

为了获取较新版本的PHP包,需要启用EPEL和Remi仓库。

    安装EPEL仓库

    sudo dnf install epel-release -y
    

    安装Remi仓库

    sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
    

    安装yum-utils

    sudo dnf install yum-utils -y
    

三、启用PHP 7.4模块

通过Remi仓库启用PHP 7.4模块。

    禁用默认的PHP模块

    sudo dnf module reset php
    

    启用PHP 7.4模块

    sudo dnf module enable php:remi-7.4 -y
    

四、安装PHP 7.4及相关扩展

安装PHP 7.4及其常用扩展。

sudo dnf install php php-cli php-common php-fpm php-json php-mysqlnd php-xml php-gd php-mbstring php-zip -y

五、启动和配置PHP-FPM

PHP-FPM是PHP的FastCGI进程管理器,用于处理Web服务器转发的PHP请求。

    启动PHP-FPM

    sudo systemctl start php-fpm
    

    设置PHP-FPM开机自启动

    sudo systemctl enable php-fpm
    

    配置PHP-FPM

    • 编辑配置文件/etc/php-fpm.d/www.conf,根据需要调整以下参数:
      
      listen = 127.0.0.1:9000
      user = nginx
      group = nginx
      

六、配置Web服务器

可以选择Nginx或Apache作为Web服务器,本文以Nginx为例。

    安装Nginx

    sudo dnf install nginx -y
    

    启动Nginx

    sudo systemctl start nginx
    

    设置Nginx开机自启动

    sudo systemctl enable nginx
    

    配置Nginx支持PHP

      编辑Nginx配置文件/etc/nginx/nginx.conf,添加以下内容:

      server {
       listen 80;
       server_name localhost;
      
      
       root /var/www/html;
       index index.php index.html;
      
      
       location ~ \.php$ {
           include snippets/fastcgi-php.conf;
           fastcgi_pass 127.0.0.1:9000;
       }
      
      
       location ~ /\.ht {
           deny all;
       }
      }
      

    重启Nginx

    sudo systemctl restart nginx
    

七、测试PHP环境

创建一个PHP测试文件以验证环境是否配置成功。

    创建测试文件

    • /var/www/html目录下创建info.php文件:
      
      <?php
      phpinfo();
      ?>
      

    访问测试文件

    • 打开浏览器,访问http://localhost/info.php,如果看到PHP信息页面,则说明环境配置成功。

八、常见问题与解决方案

    PHP-FPM启动失败

    • 检查配置文件/etc/php-fpm.d/www.conf是否有语法错误。
    • 查看日志文件/var/log/php-fpm/error.log获取错误信息。

    Nginx无法处理PHP文件

    • 确保Nginx配置文件中正确配置了PHP处理部分。
    • 检查PHP-FPM是否正在运行。

    浏览器显示空白页

    • 检查PHP文件是否有语法错误。
    • 确保Nginx和PHP-FPM配置正确。

九、总结

通过以上步骤,我们成功在CentOS环境下搭建了PHP网站服务。从安装仓库、配置PHP环境到配置Web服务器,每一步都至关重要。希望本文能帮助你在实际操作中顺利搭建PHP网站服务,为后续的开发工作打下坚实的基础。