手动搭建 LNMP 环境(CentOS 8)

最近更新时间:2022-02-22 16:02:09

本页目录:

操作场景

LNMP 环境是指在 Linux 系统下,由 Nginx + MySQL/MariaDB + PHP 组成的网站服务器架构。本文档介绍如何在腾讯云云服务器(CVM)上手动搭建 LNMP 环境。

进行手动搭建 LNMP 环境,您需要熟悉 Linux 命令,并对所安装软件的使用及版本兼容性比较了解。

注意

腾讯云建议您可以通过云市场的镜像环境部署 LNMP 环境,手动搭建 LNMP 环境可能需要较长的时间。具体步骤可参考 镜像部署 LNMP 环境

示例软件版本

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

前提条件

已购买 Linux 云服务器。如果您还未购买云服务器,请参考 快速配置 Linux 云服务器

操作步骤

步骤1:登录 Linux 实例

使用标准方式登录 Linux 实例(推荐)。您也可以根据实际操作习惯,选择其他不同的登录方式:

步骤2:安装及配置 Nginx

  1. 执行以下命令,安装 Nginx。

    说明

    本文以安装 Nginx 1.18.0 为例,您可通过 Nginx 官方安装包 获取适用于 CentOS 8的更多版本。

    dnf -y install http://nginx.org/packages/centos/8/x86_64/RPMS/nginx-1.18.0-1.el8.ngx.x86_64.rpm
  2. 执行以下命令,查看 Nginx 版本。
     
    nginx -v
    返回类似如下结果,则表明已成功安装。
    nginx version: nginx/1.18.0
  3. 执行以下命令,查看 Nginx 配置文件路径。
     
    cat /etc/nginx/nginx.conf
    可查看 include 配置项的 /etc/nginx/conf.d/*.conf 即为 Nginx 配置文件的默认路径。
  4. 依次执行以下命令,在配置文件默认路径下进行备份。
    cd /etc/nginx/conf.d
    cp default.conf default.conf.bak
  5. 执行以下命令,打开 default.conf 文件。
    vim default.conf
  6. i 切换至编辑模式,编辑 default.conf 文件。
    1. 在 location 的 index 项中添加 index.php。如下图所示:

    2. 删除 location ~ \.php$ 大括号前的 #,并修改以下配置项:
      • 修改 root 项为您的网站根目录,即 location 中的 root 项,本文以 /usr/share/nginx/html; 为例。
      • 修改 fastcgi_pass 项为 unix:/run/php-fpm/www.sock;,Nginx 通过 UNIX 套接字与 PHP-FPM 建立联系,该配置与 /etc/php-fpm.d/www.conf 文件内的 listen 配置一致。
      • 将 fastcgi_param SCRIPT_FILENAME 后的 /scripts$fastcgi_script_name; 替换为 $document_root$fastcgi_script_name;
        修改完成后如下图所示:

  7. Esc,输入 :wq,保存文件并返回。
  8. 依次执行以下命令,启动 Nginx 并设置为开机自启动。
    systemctl start nginx
    systemctl enable nginx

步骤3:安装及配置 MySQL

  1. 执行以下命令,安装 MySQL。
    dnf -y install @mysql
  2. 执行以下命令,查看 MySQL 版本。
     
    mysql -V
    返回类似如下结果,则表明已安装成功。
    mysql  Ver 8.0.21 for Linux on x86_64 (Source distribution)
  3. 依次执行以下命令,启动 MySQL 并设置为开机自启动。
    systemctl enable --now mysqld
    systemctl status mysqld
  4. 执行以下命令,执行 MySQL 安全性操作并设置密码。
     
    mysql_secure_installation
    按照以下步骤,执行对应操作:
    1. 输入 y 并按 Enter 开始相关配置。
    2. 选择密码验证策略强度,建议选择高强度的密码验证策略。输入 2 并按 Enter
      • 0:表示低。
      • 1:表示中。
      • 2:表示高。
    3. 设置 MySQL 密码并按 Enter ,输入密码默认不显示。
    4. 再次输入密码并按 Enter,输入 y 确认设置该密码。
    5. 输入 y 并按 Enter,移除匿名用户。
    6. 设置是否禁止远程连接 MySQL:
      • 禁止远程连接:输入 y 并按 Enter
      • 允许远程连接:输入 n 并按 Enter
    7. 输入 y 并按 Enter,删除 test 库及对 test 库的访问权限。
    8. 输入 y 并按 Enter,重新加载授权表。

步骤3.1:配置数据库

注意

根据 MariaDB 版本,设置用户身份验证方式有一定区别,具体步骤请参见 MariaDB 官网。

  1. 执行以下命令,进入 MariaDB。
    mysql
  2. 执行以下命令,创建 MariaDB 数据库。例如 “wordpress”。
    CREATE DATABASE wordpress;
  3. 执行以下命令,创建一个新用户。例如 “user”,登录密码为 123456
    CREATE USER 'user'@'localhost' IDENTIFIED BY '123456';
  4. 执行以下命令,赋予用户对 “wordpress” 数据库的全部权限。
    GRANT ALL PRIVILEGES ON wordpress.* TO 'user'@'localhost' IDENTIFIED BY '123456';
  5. 执行以下命令,设置 root 帐户密码。

    说明

    MariaDB 10.4 在 CentOS 系统上已增加了 root 帐户免密登录功能,请执行以下步骤设置您的 root 帐户密码并牢记。

    ALTER USER root@localhost IDENTIFIED VIA mysql_native_password USING PASSWORD('输入您的密码');
  6. 执行以下命令,使所有配置生效。
    FLUSH PRIVILEGES;
  7. 执行以下命令,退出 MariaDB。
    \q

步骤4:安装及配置 PHP

  1. 依次执行以下命令,添加并更新 epel 源。
    dnf -y install epel-release
    dnf update epel-release
  2. 依次执行以下命令,删除缓存的无用软件包并更新软件源。
    dnf clean all
    dnf makecache
  3. 执行以下命令,启动 PHP 7.3 模块。
    dnf module enable php:7.3
  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
  5. 执行以下命令,查看 PHP 版本。
     
    php -v
    返回类似如下结果,则表明已安装成功。
    PHP 7.3.20 (cli) (built: Jul  7 2020 07:53:49) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.3.20, Copyright (c) 1998-2018 Zend Technologies
  6. 执行以下命令,打开 www.conf 文件。
    vi /etc/php-fpm.d/www.conf
  7. i 切换至编辑模式,编辑 www.conf 文件。
  8. 将 user = apache 及 group = apache 修改为 user = nginx 及 group = nginx。如下图所示:

  9. Esc,输入 :wq,保存文件并返回。
  10. 依次执行以下命令,启动 PHP-FPM 并设置为开机自启动。
    systemctl start php-fpm
    systemctl enable php-fpm

验证环境配置

  1. 执行以下命令,创建测试文件。

    说明

    /usr/share/nginx/html 为您在 Nginx 中已配置的网站根目录,本文以该目录为例。

    echo "<?php phpinfo(); ?>" >> /usr/share/nginx/html/index.php
  2. 在本地浏览器中访问如下地址,查看环境配置是否成功。如何获取实例公网 IP,请参见 获取公网 IP 地址
     
    http://云服务器实例的公网 IP/index.php
    显示结果如下,则说明环境配置成功。

相关操作

在完成了 LNMP 环境搭建之后,您可在此基础上进行 手动搭建 Wordpress 个人站点 实践,了解并掌握更多关于云服务器的相关功能。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值