Loading

使用CentOS 8 搭建LNMP个人建站环境

手动搭建 LNMP 环境(CentOS 8)

本文搭建的 LNMP 环境软件组成版本及说明如下:
Linux:Linux 操作系统,本文以 CentOS 8.2 为例。
Nginx:Web 服务器,本文以 Nginx 1.20.2 为例。
MySQL:数据库,本文(不做演示)。
PHP:脚本语言,本文以 PHP 7.4.19 为例。

安装及其配置Nginx

安装Nginx

[root@rzk opt]# dnf -y install http://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.20.2-1.el8.ngx.x86_64.rpm

查看 版本

[root@rzk opt]# nginx -v
nginx version: nginx/1.20.2

执行以下命令,查看 Nginx 配置文件路径

可查看 include 配置项的 /etc/nginx/conf.d/*.conf 即为 Nginx 配置文件的默认路径

[root@rzk opt]# cat /etc/nginx/nginx.conf

执行以下命令备份配置文件

[root@rzk opt]# cd /etc/nginx/conf.d/
[root@rzk conf.d]# ls
default.conf
[root@rzk conf.d]# cp default.conf default.conf.bak

打开 default.conf 文件

[root@rzk conf.d]#  vim default.conf

在 location 的 index 项中添加 index.php

    location / {
        # 替换成网址的根路径
        root   /usr/share/nginx/html;
        # 添加index.php
        index  index.html index.htm index.php;
    }

去掉location之前的#

修改 root 项为您的网站根目录
修改 fastcgi_pass 项为 unix:/run/php-fpm/www.sock;,Nginx 通过 UNIX 套接字与 PHP-FPM 建立联系,该配置与 /etc/php-fpm.d/www.conf 文件内的 listen 配置一致

    location ~ \.php$ {
        # 修改 root 项为您的网站根目录
        root           /home/rzk/html;
        fastcgi_pass   unix:/run/php-fpm/www.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;;
        include        fastcgi_params;
    }

按 Esc,输入 :wq,保存文件并返回。

启动Nginx

启动 Nginx

systemctl start nginx

并设置为开机自启动

systemctl enable nginx

安装及配置 PHP

添加并更新 epel 源

[root@rzk conf.d]# dnf -y install epel-release
[root@rzk conf.d]# dnf update epel-release

删除缓存的无用软件包并更新软件源。

dnf clean all
dnf makecache

执行以下命令,启动 PHP 7.4 模块

dnf module enable php:7.4

安装所需 PHP 对应模块

dnf install php php-curl php-dom php-exif php-fileinfo php-fpm php-gd php-hash php-json php-mbstring php-mysqli php-openssl php-pcre php-xml libsodium

查看php版本

[root@rzk conf.d]# php -v
PHP 7.4.19 (cli) (built: May  4 2021 11:06:37) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.19, Copyright (c), by Zend Technologies

打开 www.conf 文件

将 user = apache 及 group = apache 修改为 user = nginx 及 group = nginx。如下图所示:

[root@rzk conf.d]# vim /etc/php-fpm.d/www.conf

按 Esc,输入 :wq,保存文件并返回。

启动php-fpm

查看php-fpm状态

[root@rzk html]# systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

启动 php-fpm

systemctl start php-fpm

并设置为开机自启动

systemctl enable php-fpm

验证环境配置

创建测试文件

/home/rzk/html Nginx 中已配置的网站根目录,以该目录为例

[root@rzk html]# echo "<?php phpinfo(); ?>" >> /home/rzk/html/index.php

访问效果

后续步骤

运行以下命令将phpinfo.php文件删除,消除数据泄露风险。

rm -rf <网站根目录>/phpinfo.php

其中,<网站根目录>需要替换为您在nginx.conf中配置的网站根目录。
本文配置的网站根目录为/home/rzk/html,因此需要运行以下命令:.

rm -rf /home/rzk/html/index.php
posted @ 2022-04-25 11:49  Rzk  阅读(216)  评论(0编辑  收藏  举报