注:本文附件

一、备份之前的博客数据

1、备份网站内容

备份网站素材目录备用(里面包含主题文件和上传到网站上的图片等素材)

cd /www/wwwroot/boxbull.com/
tar -zcvf wp-content.tar.gz wp-content

2、备份数据库

备份数据库并下载到本地备用
file

3、备份主题配置文件

导出主题的配置文件备用
file

4、备份菜单

WordPress 默认不提供备份导航菜单的功能,我们需要借助WPS Menu Exporter 插件备份网站的导航菜单。安装插件后即可导出导航菜单
file

二、群晖安装宝塔容器

1、安装docker套件

在群晖的套件中心搜索安装docker套件

2、添加国内阿里云镜像加速

docker--注册表--选中默认地址--编辑--勾选“启用注册表镜像”--粘贴镜像地址
(镜像地址:https://rr05efme.mirror.aliyuncs.com)
file

3、下载宝塔镜像

在docker的镜像里添加宝塔的镜像链接
file
链接可在hub.docker.com里获取。宝塔的docker镜像地址是:https://hub.docker.com/r/pch18/baota
镜像安装完成如下:
file

4、设置网站目录

在启动容器之前,我们可以先新建一个目录,后面容器启动好把网站挂载过来,方便我们修改网站
在docker目录里,创建一个wwwroot
然后我们需要给docker权限,不然它没法写入数据
file

5、启动容器

在控制台配置容器比较繁琐。这里直接连接群晖的终端用命令行创建容器。

开启群晖ssh功能

控制面板--终端机和SNMP--勾选启动SSH功能

连接群晖终端

使用secure CRT或者putty连接群晖终端

创建容器

使用sudo -i切换到管理员用户

docker run -tid --name baota \
-p 180:80 -p 1443:443 -p 8888:8888 -p 888:888 \
-p 120:20 -p 121:21 \
--privileged=true --shm-size=1g \
--restart always \
-v /volume1/docker/wwwroot:/www/wwwroot \
-v /volume1/docker/backup:/www/backup \
-v baota_www:/www \
pch18/baota

file
等待大概一分钟即可创建完成
在群晖的docker控制台也能看到容器已创建并运行
file

连接宝塔

输入群晖地址+8888端口,即可访问宝塔面板
file

  • 默认账号:username
  • 默认密码:password
  • 但是使用默认账号密码登录提示错误,通过docker的终端机里输入bt命令运行向导修改密码
    file

三、搭建博客环境

安装LNMP环境

(该容器开箱已装LNMP,需将默认的mysql mariadb改为MySQL5.7
file
安装php7.4,卸载默认的php7.3
file

创建数据库,用于存放博客数据

file

创建站点

  • 默认存储路径/www/wwwroot/,对应NAS的/docker/wwwroot/
    file

    安装WordPress

    将官方wordpress模板文件放入网站根目录(模板文件见附件)
    file
    访问服务器地址,开始安装wordpress
    file
    有可能在安装时提示无法写入文件
    file
    需按提示手动在网站根目录创建wp-config.php,将上述内容拷贝进去。
    注意:在脚本最后面输入php的结束字符:?>
    在数据库连接成功后,会到最后一步,输入网站信息
    file
    以上完成wordpress的搭建。下面恢复备份数据

    恢复数据库

    将旧服务器上的数据库备份文件上传至该服务器
    file
    导入成功后,发现会自动跳转到旧服务器的url,这是因为数据库里指定了域名。
    需手动将之前的域名改为现在的ip地址或域名
    file

    修改数据库

    因为是在容器中启动的,所以需将容器的3306端口映射出来才可以在外部访问。而刚才新建容器时未映射该端口。故需重新添加映射。
    修改容器的映射很简单,可在将控制台直接操作。
    先将容器停止,在端口设置中新增端口映射,再启动容器即可。
    file
    这里演示用宝塔内安装的phpMyAdmin工具修改数据库
    在数据库上点“管理”
    file
    输入账号密码后,选中数据库,点查询

    update wp_options set option_value = "http://www.moyuwa.com" where option_value = "http://www.moyuwa.com";
    update wp_postmeta set meta_value = "http://www.moyuwa.com/" where meta_value = "http://www.moyuwa.com/";

    file

导入网站内容文件

将上面备份的网站内容目录wp-content替换

启用主题

在wordpress控制面板的外观--主题启用该主题
启用主题时提示需安装Swoole Compiler插件
file
按提示将插件放入/www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902
修改/www/server/php/74/etc/php.ini,在后面加上

extension = swoole_loader74.so

重启php服务
此时博客首页已可正常访问,但是网站内容页提示404

  • 1:在宝塔后台–-网站--设置-–伪静态-–选择wordpress–-保存
  • 2:然后到WP后台设置-–固定链接-–固定连接模式推荐为自定义:/%post_id%.html
    file

    修改文章图片地址

    此时发现文章可以正常访问了,但是图片404。这是因为文章里的图片链接是绝对路径http://www.moyuwa.com/wp-content/uploads/2023/02/image-1676615479097.png
    需在数据库里修改引用的文章地址

    UPDATE wp_posts SET post_content = replace(post_content, 'http://www.moyuwa.com', 'http://www.moyuwa.com') where post_content like '%http://www.moyuwa.com%'

安装插件

默认安装插件需要FTP服务器,按以下步骤修改配置,可直接从应用市场下载插件或上传本地插件至服务器:

vim wp-config.php
# 在末尾加上
define("FS_METHOD","direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);

博客网站使用了以下插件
代码高亮插件:Pure Highlightjs,主题选择monokai-sublime(该主题需修改css样式。css内容在本文的自定义样式里)
文章大纲插件:Table of Contents Plus
MD语法插件:WP Githuber MD
导入导出菜单插件:WPS Menu Exporter

导入菜单

安装WPS Menu Exporter插件后,在
file
上传配置文件,开始导入
file

微调

修改console输出文字

vim wp-content/themes/boxbull/assets/js/app.js
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。