(原文:https://blog.iyatt.com/?p=12732)
前言
我这个博客就是基于 LNMP + WordPress 搭建的,用的阿里云的学生机,从 19 年底开始使用阿里云的学生机,一直续费到 25 年初,再续费就年龄超了没有学生优惠,价格直接从 96¥/年猛增,如图:
因此有计划在到期之前把博客迁移到新的服务器,不过很久没弄过这个 WP 环境配置了,打算用虚拟机本地搭建走一遍流程,另外折腾一下怎么迁移博客数据。
WordPress 可用的环境组合其实挺多,基本需要就是服务器+数据库+PHP。LNMP 指 Linux + Nginx + Mysql + PHP,当前博客使用数据库并不是 Mysql,而是 Mariadb,后者是开源社区维护的,追求兼容前者,两者数据库互迁兼容性很高。Nginx 是 Web 服务器,常用的另外一个方案是 LAMP,服务器采用 Apache。
我这里演示的部署方案是纯手动操作,不使用宝塔面板、phpMyAdmin 之类的工具,手动安装,手动配置服务,手动配置数据库…
环境
Ubuntu 22.04 x86_64
全程使用非 root 用户操作。
LNMP 部署
更新软件索引
sudo apt update -y
安装 Nginx
sudo apt install -y nginx
安装好后会自动启动 Nginx 服务,用浏览器可以访问,默认开启的 http 80 端口
安装 PHP 及需要用到的一些 PHP 模块。
sudo apt install -y php-common php-cli php-fpm php-mysql php-mbstring php-curl php-gd php-twig php-json php-opcache php-readline php-xml php-zip php-dompdf php-gmp php-imap php-intl php-imagick
配置 Nginx,配置文件的路径位于 /etc/nginx 下。
/etc/nginx/sites-available/default 是 Nginx 提供的默认网站配置,然后 /etc/nginx/sites-enabled/ 下也有个 default 文件,但其实是前者的软连接,sites-enabled中放的是启用的网站配置,将要启动的配置在里面创建软链接就行。开头安装 Nginx 后用浏览器可以访问的页面就是这个默认配置,里面写了网站的根目录,访问到的网页就是默认提供的示例页面。这里需要先配置 PHP 解析,后面根据需要还要配置域名,SSL 支持(https)等等。
可以额外创建配置文件,再创建启用的软连接,或者直接修改默认的,为了省事,这里直接重写默认配置&#