LNMP 环境配置,搭建 WordPress 博客软件-阿里云 ECS 云服务器

之前一直在用 Github Page + Hexo 作为自己的博客站点,最近领到了阿里云的免费云服务器,在领服务器之前的训练中体验到了 WordPress 的配置和后台管理,感觉很不错,于是想搭建一个 WordPress 来玩玩

1 准备步骤:配置 LNMP 环境

可以参考:
手动部署LNMP环境(CentOS 8)

1.1 概述

首先要在服务器上配置 WordPress 所需要的环境。一般来说,这样的网站一般都需要 "LNMP 环境" 。LNMP 是目前主流的网站服务器架构之一,LNMP 分别代表 Linux、Nginx、MySQL 和 PHP。

关于Linux:
Linux 就是你要运行 WordPress 软件需要的操作系统,我这里使用的是阿里云 ECS 云服务器,Debian11.7 操作系统。当然用 Windows 也是可以的。

关于 Nginx:

"Nginx 是一款高性能的 Web 服务器软件,也可以作为反向代理服务器、负载均衡器和 HTTP 缓存。"

by chatGPT 3.5

关于 MySQL:

"MySQL 是一种开源的关系型数据库管理系统,广泛用于 Web 应用程序的开发和管理。"

by chatGPT 3.5

关于PHP:

"PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。"

by runoob.com

1.1 安装 MySQL 服务

首先连接到云服务器

下载下面的连接中的软件,准备安装 Mysql 官方源:
https://dev.mysql.com/downloads/repo/apt/
下载到服务器后,执行以下命令运行:

sudo dpkg -i mysql-apt-config_0.8.26-1_all.deb

在弹出的 tui 选择 OK 后回车
然后执行以下命令安装 MySQL:

sudo apt update
sudo apt-get install mysql-server

安装过程中会自动弹出 tui 提醒用户设置 root 密码
还会弹出一个 tui 窗口询问你选择身份验证插件,我这里选择它推荐的
然后安装完成,输入以下命令以验证:

mysql --version
mysql --help

1.2 安装 PHP 环境

首先连接到云服务器

执行以下命令安装 PHP 以及相关扩展软件:

sudo apt update
sudo apt install php php-common php-cli php-curl php-fpm php-gd php-json php-mbstring php-mysql php-xml

执行以下命令验证安装:

php --version

1.3 安装 Nginx 服务

首先连接到云服务器

更新系统自带的 nginx !!!
从 nginx 官方网站上配置 apt 源:
https://nginx.org/en/linux_packages.html#Debian
执行以下命令安装 Nginx:

sudo apt update
sudo apt install nginx

执行以下命令验证安装:

sudo nginx -V

至此,LNMP 环境安装完毕

2 配置 WordPress

可以参考:
手动搭建WordPress(CentOS 8)

2.1 配置 WordPress 数据库 (MySQL)

使用 root 用户登录 MySQL,并输入密码。密码为您在搭建环境时为数据库设置的密码。

mysql -uroot -p

为 WordPress 创建数据库:

create database wordpress;

创建一个新用户 wordpress 管理 WordPress 库,提高安全性
查看密码强度规则:

show variables like "%password%";

创建新用户 wordpress

create user 'wordpress'@'localhost' identified by 'password_here';

赋予用户对数据库 wordpress 的全部权限:

grant all privileges on wordpress.* to 'wordpress'@'localhost';

使配置生效:

flush privileges;

退出 MySQL:

exit;

2.2 配置 WordPress 与 PHP 相关

进入 Nginx 网站根目录,从 WordPress 官网获取最新版安装包:

cd /usr/share/nginx/html
# wget https://wordpress.org/latest.zip
wget https://cn.wordpress.org/latest-zh_CN.zip

解压 WordPress 压缩包:

unzip latest-zh_CN.zip

将 WordPress 安装目录下的 wp-config-sample.php 文件复制到 wp-config.php 文件中,并将 wp-config-sample.php 文件作为备份:

cd /usr/share/nginx/html/wordpress
cp wp-config-sample.php wp-config.php

编辑 wp-config.php 文件:

# wp-config.php

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');

/** MySQL数据库用户名 */
define('DB_USER', 'user');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'PASSword123.');

/** MySQL主机 */
define('DB_HOST', 'localhost');

保存退出

2.3 配置 Nginx

运行以下命令,查看并记录 Nginx 配置文件的默认路径:

cat /etc/nginx/nginx.conf

http 大括号内,查看 include 配置项。即配置文件的默认路径
屏幕截图 2023-10-13 225542.png

配置文件中添加网站根目录和 PHP 有关配置:

# /etc/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html/wordpress;
        index  index.html index.htm index.php;
    }
	...
    location ~ \.php$ {
        root            /usr/share/nginx/html/wordpress;
        fastcgi_pass    unix:/var/run/php/php-fpm.sock;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }
}

修改 wordpress 根目录的权限:

sudo chown -R www-data:www-data /usr/share/nginx/html/wordpress

编辑 /etc/nginx/nginx.conf ,修改 userwww-data

user  www-data;
...

重新加载配置文件:

sudo nginx -c /etc/nginx/nginx.conf
sudo nginx -s reload

重启 Nginx 服务:

systemctl restart nginx

在本地物理机上使用浏览器访问 ECS实例公网IP,进入 WordPress 安装页面

3 HTTPS 反向代理

参考
https://certbot.eff.org/instructions?ws=nginx&os=debianbuster
记得配置在 /etc/nginx/nginx.conf 里配置服务器域名信息

posted @ 2024-01-28 13:54  rouv  阅读(15)  评论(0)    收藏  举报