Blessing Skin 皮肤站搭建 / 备份记录

QiuSYan ( ᗜ ‸ ᗜ )

AI 摘要

文章标题:Blessing Skin:开源 Minecraft 皮肤站搭建教程与部署指南 主要内容概述: 1. Blessing Skin 是一个 PHP 编写的开源工具,专为 Minecraft 服务器用户设计,用于上传、管理和分享自定义皮肤和披风。 2. 无需离线运行,通过网络应用,用户可以在线查看和管理各自的皮肤,提高服务器的社交体验。 3. 本文介绍了在低配 Ubuntu 22.04 服务器上安装 Blessing Skin 的步骤,包括更新源、安装依赖(如 Apache、PHP、PostgreSQL)、配置 SSL 证书和域名解析。 4. 配置过程涉及设置 Apache 虚拟主机、生成和管理证书、以及调整 PostgreSQL 设置。 5. 整个过程适合资源有限的用户,表明 Blessing Skin 具有轻量级和易于部署的特点。 关键点: - PHP 开发的开源皮肤站应用 - 适用于 Minecraft 服务器的用户界面管理 - 服务器环境搭建(Ubuntu 22.04, 低配环境部署) - 安装和配置 Apache、PHP、PostgreSQL - SSL 证书获取与 Apache 配置 - 预备工作(域名、邮件地址输入) 建议阅读及实践: - 查看官方文档和用户手册以获取更多详细信息 - 注意环境配置的适应性,根据实际情况调整参数 - 安全性方面,确保遵循 SSL 证书管理和权限设置的最佳实践。

ソラゴト - coctaiL

作词:ポリスピカデリー

作曲:ポリスピカデリー

そう言えばそうこの胸の穴 (那么说来这胸前的空洞)

気にも留めないでいたよ (我也已经不怎么在意它)

どんな具合に見えてるの?(看起来会是怎样的情况?)

今更だけどね (尽管是事到如今才发问啊)

約束じやない想定内で辛い (这并非约定而在预想之内的痛苦)

続きはまた持ち越しだろう (持续下去也就会是不断拖延)

って何故失うから楽になる (那么为何会因失去而感到轻松呢?)

それでも少し (尽管如此)

ムキになったって (稍微变得有些斤斤计较)

構わないんだ (但也是没关系的)

ずっと痺れてるから (因为一直在麻痹自己)

淡い光に欺かれる (所以会被那微弱的光亮欺骗)

風に抱かれ砂に溶け (被風簇拥着 消融于沙中)

満たされるまでここに居よう (在这里待到满足为止吧)

きっと同じ意識を知る (我们一定心怀相同的感知)

奪ってみせて愛の歌を (剥夺并向我展示爱的曲目)

痛みに似た足りないもの (像痛苦一样的不值当之物)

波のように打ち寄せる (如同海浪一样反复拍打着我)

底に留まる未晒しの想い (留藏在心底而未暴露出来的想法)

邪魔にならないのもやるせない (不碍事 也令人无计可施)

醒めてしまう前に終わらせよう (在完全清醒前结束一切吧)

収まりが良いのは頼もしい (善于决断才是可靠的)

そのあと (在那之后)

愛おしくなったって (变得令人怜爱)

構わないんだ (也是没关系的)

ずっと痺れてるから (因为一直在麻痹自己)

淡い光に欺かれる (所以会被微弱的光亮欺骗)

時が背中を追い越したら (如果时间超越了后背)

夢はここにおいてくよ (就把美梦放在这里吧)

きっと同じ意識を知る (我们一定心怀相同的感知)

奪ってみせて哀の歌を (剥夺并向我展示的哀愁的曲目)

救いに似た脆いもの (像拯救一样的脆弱之物)

触れる度に痛めてしまう (一旦触碰便会受伤)

記憶と繋がってる扉を叩いてみる (试着敲响连通记忆的大门)

あとどれくらい信じられる (之后无论还能相信多少)

この先を進む理由でもあるんだ (这也是前进的理由)

ずっと続いてくなら (如果一直继续下去的话)

いっそこのままでいい (干脆就维持着现在这样算了吧)

ずっと痺れてるから (因为一直在麻痹自己)

淡い光に欺かれる (所以会被那微弱的光亮所欺骗)

風に抱かれ砂に溶け (被风簇拥着 消融于沙中)

満たされるまでここに居よう (在这里待到满足为止吧)

きっと同じ意識を知る (我们一定心怀相同的感知)

奪ってみせて愛の歌を (剥夺并向我展示爱的曲目)

痛みに似た足りないもの (像痛苦一样的不值当之物)

波のように打ち寄せる (如同海浪一样反复拍打着我)

そう言えばそうこの胸の穴 (那么说来这胸前的空洞)

気にも留めないでいたよ (我也已经不怎么在意它)

新しい道になるんだ (那已成为一条崭新的道路)

今はうまく言えないけど (即便现在还无法清楚地说出口)

00:00 / 03:22
  1. 1 ソラゴト coctaiL

Blessing Skin 是什么

你是否因在离线模式下运行的 Minecraft 服务器中丢失自定义皮肤而感到困惑?现在,借助 Blessing Skin 的帮助,你可以轻松地找回它们!
Blessing Skin 是一个网络应用程序,在这里你可以上传、管理和分享你的自定义皮肤和披风!与修改资源包不同,游戏中的每个人都可以看到彼此的不同皮肤(当然,他们也应在同一个网站上注册)。
Blessing Skin 是一个用 PHP 编写的开源项目,这意味着你可以自由地在自己的网络服务器上部署它!

简而言之,它是一个适用于 Minecraft 服务器 的,可让用户上传、管理和分享他们的 Minecraft 皮肤和披风的 Web 应用程序
配合某些插件可以做到 让玩家仅可使用皮肤站账号进入服务器

Github 地址:bs-community/blessing-skin-server

官方文档地址:Blessing Skin 手册 | Blessing Skin 用户手册

开始安装

我的环境是一个 1H512M 的 Ubuntu 22.04,磁盘存储仅有 5GB
但是这样的环境也能搭成功,可见 Blessing Skin 之轻量
其实是没钱买更高配的机子,大家别学我

需要准备的东西:

  • 一台能够搭建网站的服务器
  • 一个自己的域名
  • 一台电脑
  • 一个脑子

系统更新

先换源,如果你的机子是海外的可以不用换

1
2
3
sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list
sudo sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list
sudo sed -i 's/http:/https:/g' /etc/apt/sources.list

更换为清华源,其中 中间那行是更换 安全更新 的源。由于镜像站更新有时不及时,使用镜像源的安全更新源可能会导致你无法及时获取到最新的安全更新,介意的可以不换

然后一套连招更新系统

1
2
# 更新软件源 && 更新软件包 && 删除旧软件包
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

安装一些小工具

1
sudo apt install vim git zip -y

安装 PHP 及其相关拓展

1
sudo apt install apache2 php php-gd php-mbstring php-xml php-zip php-pgsql -y

验证 php 版本:

1
php -v

下载 blessing-skin-server

记得到 GitHub Releases 页面确认最新版的下载链接

1
wget https://github.com/bs-community/blessing-skin-server/releases/download/6.0.2/blessing-skin-server-6.0.2.zip

下不动的可以在前面加个镜像:

1
wget https://mirror.ghproxy.com/github.com/bs-community/blessing-skin-server/releases/download/6.0.2/blessing-skin-server-6.0.2.zip

解压缩

1
2
sudo mkdir /var/www/blessing-skin
sudo unzip blessing-skin-server-6.0.2.zip -d /var/www/blessing-skin/

修改文件权限

1
sudo chown -R www-data:www-data /var/www/blessing-skin

生成密钥

1
2
3
cd /var/www/blessing-skin/
sudo cp .env.example .env
sudo php artisan key:generate

配置 Apache

编写配置文件

如果你希望给你的皮肤站启用 HTTPS,那么请跳到 配置 SSL 证书(HTTPS)

1
sudo vim /etc/apache2/sites-available/blessing-skin.conf

在编辑器中粘贴如下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/blessing-skin/public

<Directory /var/www/blessing-skin/public>
AllowOverride All
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

配置 SSL 证书(HTTPS)(推荐)

这里我们使用 Let’s Encrypt 来创建一个免费证书

  1. 安装 Python

    1
    apt install python3 pip
  2. pip 换源

    1
    pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
  3. 安装证书生成工具

    1
    pip install certbot
  4. 设置域名解析
    若想使用 Let's Encrypt 签发证书,就必须将涉及的域名先解析到服务器才行。
    例如我们将预申请 SSL 证书域名 和 服务器 IP 地址的信息整理如下:

    预申请 SSL 证书域名服务器 IP 地址
    yourdomain.com114.51.41.9

在申请证书之前,须将该域名 yourdomain.com 的 A 记录解析到 114.51.41.9
在申请 SSL 证书的时候,我们需要在 114.51.41.9 服务器上操作 certbot 才行。

  1. 生成证书
    先停止 Apache 服务(因为 Apache 会占用 80 端口)
    1
    sudo systemctl stop apache2
    随后使用
    1
    certbot certonly --standalone -d yourdomain.com
    上述命令的意思是,启动独立的 web 服务进行身份验证,为 yourdomain.com 申请 / 续订 SSL 证书,但是不需要自动安装。

在此过程中,会弹出很多的选项,让我们输入,大概流程为:

  • 会让我们输入邮件地址,将用于续订和安全通知。
  • 会让我们确定是否向 ACME server 注册。
  • 是否分享你的邮件让 EFF 共享。
    如果申请成功后,会在 /etc/letsencrypt/live/ 下,以域名为目录,里面存储的证书信息,并且会告知过期时间是多久。

以我的为例,我的域名是 skin.mc.qiusyan.top,所以它生成的证书会在 /etc/letsencrypt/live/skin.mc.qiusyan.top 目录下

它会自动生成两个文件:privkey.pemfullchain.pem

执行以下指令:

1
2
3
4
5
6
7
# 创建证书文件夹
mkdir /var/www/blessing-skin/ssl

# 将证书文件复制进去,自行修改对应目录
cp /etc/letsencrypt/live/skin.mc.qiusyan.top/fullchain.pem /var/www/blessing-skin/ssl/
cp /etc/letsencrypt/live/skin.mc.qiusyan.top/privkey.pem /var/www/blessing-skin/ssl/

随后执行如下操作:

  1. 修改文件权限

    1
    sudo chown www-data:www-data -R /var/www/blessing-skin/ssl
  2. 启用 Apache2 的 SSL 模块

    1
    sudo a2enmod ssl
  3. 编辑 /etc/apache2/sites-available/blessing-skin.conf 配置文件
    注意:第十二行处的 ServerName 后的域名需要修改为你自己的皮肤站域名

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <IfModule mod_ssl.c>
    <VirtualHost *:80>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
    </VirtualHost>
    <VirtualHost *:443>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/blessing-skin/public

    # 此处修改为你自己的皮肤站域名
    ServerName your_domain.com
    SSLCertificateFile /var/www/blessing-skin/ssl/fullchain.pem
    SSLCertificateKeyFile /var/www/blessing-skin/ssl/privkey.pem

    <Directory /var/www/blessing-skin/public>
    AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    </IfModule>

    # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
  4. 重启 Apache2 服务使配置生效

    1
    sudo systemctl restart apache2.service

配置站点

1
2
3
4
5
6
7
8
9
10
11
# 禁用默认站点
sudo a2dissite 000-default.conf

# 启用 blessing-skin 站点
sudo a2ensite blessing-skin.conf

# 启用 rewrite 模块
sudo a2enmod rewrite

# 重新加载 Apache 服务使配置生效
sudo systemctl restart apache2.service

安装 & 配置 Postgresql

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 安装 postgresql
sudo apt install postgresql -y

# 切换到数据库用户
sudo su postgres

# 进入数据库管理工具
psql

# 设置数据库密码,牢记你的密码,后面会用到
\password

# 创建皮肤站数据库
CREATE DATABASE blessingskin;

# 退出管理工具
\q

修改 /etc/postgresql/14/main/postgresql.conf 文件第 60 行取消注释,允许本地登入数据库。

1
listen_addresses = 'localhost'          # what IP address(es) to listen on;

重启服务使配置生效:

1
sudo systemctl restart postgresql.service

安装 Redis (可选)

1
sudo apt install redis php-redis

配置请参考 配置文件介绍 - Redis 相关

运行安装向导

现在访问主机 IP 可以看到欢迎页面了,记得选择数据库类型为 PostgreSQL:

恭喜,你的皮肤站已经部署完成!
更多的内容就自己去探索吧~
善用官方文档与搜索引擎:Blessing Skin 手册 | Blessing Skin 用户手册

备份 & 恢复相关

咳咳,这一段其实才是我写这篇文章的初衷
写一下备份 & 恢复相关的步骤免得自己忘了

好的,假设你有一个已经架设好了的 Blessing Skin 皮肤站,然而现在遇到了一个问题使得你需要 备份你的数据并且日后要恢复正常运行,那么就往下看

备份数据

备份数据库

先切换到 postgres 用户并且切换到对应目录:

1
2
sudo su postgres
cd

然后使用 pg_dump 命令备份数据库:

1
pg_dump -U postgres blessingskin > blessingskin_backup.sql

此处指令的 blessingskin 为你要导出的数据库名称,blessingskin_backup.sql 是备份后的文件名称

导出之后可以使用 pwd 指令来查看当前目录,你的备份文件也会在这里。随后使用 Filezilla 之类的 SFTP 软件将其下载到本地即可。

备份站点文件

记得先切换回原用户

切换到你的皮肤站站点目录的上一级目录

1
cd /var/www

将其打包 or 压缩

  • 打包

    1
    tar -cvf blessingskin.tar blessingskin
  • 压缩

    使用 7z 指令压缩需要安装 p7zip-full 软件包

    1
    7z a -t7z -r blessingskin.7z /var/www/blessingskin

二者选其一即可。
随后将打包后的文件下载到本地就完成备份了。

如果你的服务器是像我那样的小破机子就只能用打包了,用不了 7z 压缩
不是都说了不要学我吗啊喂

恢复数据

你的环境应该是全新的

准备工作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 换源
sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list
sudo sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list
sudo sed -i 's/http:/https:/g' /etc/apt/sources.list

# 更新软件源 && 更新软件包 && 删除旧软件包
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

# 安装工具
sudo apt install vim git zip p7zip-full -y

# 安装php及其相关拓展
sudo apt install apache2 php php-gd php-mbstring php-xml php-zip php-pgsql -y

# 安装postgres
sudo apt install postgresql -y

# 切换到数据库用户
sudo su postgres

# 进入数据库管理工具
psql

# 设置数据库密码,建议和之前的密码一样,如果不记得了可以去查看皮肤站站点文件内.env文件中的DB_PASSWORD配置项
\password

# 创建皮肤站数据库,建议和之前的数据库名称一样,如果不记得了可以去查看皮肤站站点文件内.env文件中的DB_DATABASE配置项
CREATE DATABASE blessingskin;

# 退出管理工具
\q

随后进入数据库恢复工作:

记得先将你的备份文件 blessingskin_backup.sql 上传到 /var/lib/postgresql 目录下

1
2
3
4
5
6
7
8
9
10
# 切换到数据库用户
sudo su postgres

# 切换到对应工作目录
cd

# 恢复备份
psql -U postgres -d blessingskin -f blessingskin_backup.sql

# blessingskin 是你想将备份文件导入的数据库的名称,blessingskin_backup.sql是你备份的文件

然后进入 /var/www 目录下,并且将你的 皮肤站站点文件备份 上传至此
解压缩至当前目录:

  • .tar 文件
    1
    2
    # blessingskin.tar 请自行更改为对应文件名
    tar -xvf blessingskin.tar
  • .7z 文件
    1
    2
    # blessingskin.7z 请自行更改为对应文件名
    7z x blessingskin.7z -r -o/var/www/blessingskin

记得修改目录权限

1
sudo chown -R www-data:www-data /var/www/blessing-skin

接下来的步骤就是配置 Apache 了,按照 配置 Apache 来就行了
配置完 Apache 之后,恢复工作就大功告成了!

有啥问题的可以在当前页面留言~💖

参考链接

  • 标题: Blessing Skin 皮肤站搭建 / 备份记录
  • 作者: QiuSYan
  • 创建于 : 2024-08-14 10:51:12
  • 更新于 : 2025-03-12 17:36:20
  • 链接: https://blog.qiusyan.top/posts/8093.html
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
Nickname
Email
Website
0/500
  • OωO
  • |´・ω・) ノ
  • ヾ (≧∇≦*) ゝ
  • (☆ω☆)
  • (╯‵□′)╯︵┴─┴
  •  ̄﹃ ̄
  • (/ω\)
  • ∠( ᐛ 」∠)_
  • (๑•̀ㅁ•́ฅ)
  • →_→
  • ୧(๑•̀⌄•́๑)૭
  • ٩(ˊᗜˋ*)و
  • (ノ °ο°) ノ
  • (´இ皿இ`)
  • ⌇●﹏●⌇
  • (ฅ´ω`ฅ)
  • (╯°A°)╯︵○○○
  • φ( ̄∇ ̄o)
  • ヾ (´・ ・`。) ノ "
  • (ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
  • (ó﹏ò。)
  • Σ(っ °Д °;) っ
  • (,,´・ω・)ノ"(´ っ ω・`。)
  • ╮(╯▽╰)╭
  • o(*////▽////*)q
  • >﹏<
  • ( ๑´•ω•) "(ㆆᴗㆆ)
  • 😂
  • 😀
  • 😅
  • 😊
  • 🙂
  • 🙃
  • 😌
  • 😍
  • 😘
  • 😜
  • 😝
  • 😏
  • 😒
  • 🙄
  • 😳
  • 😡
  • 😔
  • 😫
  • 😱
  • 😭
  • 💩
  • 👻
  • 🙌
  • 🖕
  • 👍
  • 👫
  • 👬
  • 👭
  • 🌚
  • 🌝
  • 🙈
  • 💊
  • 😶
  • 🙏
  • 🍦
  • 🍉
  • 😣
  • 颜文字
  • Emoji
  • Bilibili
0 comments
No comment