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之轻量其实是没钱买更高配的机子,大家别学我
需要准备的东西:
一台能够搭建网站的服务器一个自己的域名一台电脑一个脑子系统更新先换源,如果你的机子是海外的可以不用换
123sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.listsudo sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.listsudo sed -i 's/http:/https:/g' /etc/apt/sources.list更换为清华源,其中 中间那行是更换 安全更新 的源。由于镜像站更新有时不及时,使用镜像源的安全更新源可能会导致你无法及时获取到最新的安全更新,介意的可以不换
然后一套连招更新系统
12# 更新软件源 && 更新软件包 && 删除旧软件包sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y安装一些小工具1sudo apt install vim git zip -y安装PHP及其相关拓展1sudo apt install apache2 php php-gd php-mbstring php-xml php-zip php-pgsql -y验证php版本:
1php -v下载 blessing-skin-server记得到 GitHub Releases 页面确认最新版的下载链接
1wget https://github.com/bs-community/blessing-skin-server/releases/download/6.0.2/blessing-skin-server-6.0.2.zip下不动的可以在前面加个镜像:
1wget https://mirror.ghproxy.com/github.com/bs-community/blessing-skin-server/releases/download/6.0.2/blessing-skin-server-6.0.2.zip解压缩12sudo mkdir /var/www/blessing-skinsudo unzip blessing-skin-server-6.0.2.zip -d /var/www/blessing-skin/修改文件权限1sudo chown -R www-data:www-data /var/www/blessing-skin生成密钥123cd /var/www/blessing-skin/sudo cp .env.example .envsudo php artisan key:generate配置 Apache编写配置文件如果你希望给你的皮肤站启用 HTTPS,那么请跳到 配置SSL证书(HTTPS)
1sudo vim /etc/apache2/sites-available/blessing-skin.conf在编辑器中粘贴如下内容:
12345678910111213
安装 Python
1apt install python3 pippip换源
1pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple安装证书生成工具
1pip install certbot设置域名解析若想使用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才行。
生成证书先停止Apache服务(因为Apache会占用80端口)1sudo systemctl stop apache2随后使用1certbot 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.pem 和 fullchain.pem
执行以下指令:
1234567# 创建证书文件夹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/随后执行如下操作:
修改文件权限
1sudo chown www-data:www-data -R /var/www/blessing-skin/ssl启用 Apache2 的 SSL 模块
1sudo a2enmod ssl编辑 /etc/apache2/sites-available/blessing-skin.conf 配置文件注意:第十二行处的 ServerName后的域名需要修改为你自己的皮肤站域名
12345678910111213141516171819202122232425
1sudo systemctl restart apache2.service配置站点1234567891011# 禁用默认站点sudo a2dissite 000-default.conf# 启用 blessing-skin 站点sudo a2ensite blessing-skin.conf# 启用 rewrite 模块sudo a2enmod rewrite# 重新加载 Apache 服务使配置生效sudo systemctl restart apache2.service安装 & 配置 Postgresql1234567891011121314151617# 安装 postgresqlsudo apt install postgresql -y# 切换到数据库用户sudo su postgres# 进入数据库管理工具psql# 设置数据库密码,牢记你的密码,后面会用到\password# 创建皮肤站数据库CREATE DATABASE blessingskin;# 退出管理工具\q修改 /etc/postgresql/14/main/postgresql.conf 文件第 60 行取消注释,允许本地登入数据库。
1listen_addresses = 'localhost' # what IP address(es) to listen on;重启服务使配置生效:
1sudo systemctl restart postgresql.service安装 Redis (可选)1sudo apt install redis php-redis配置请参考 配置文件介绍 - Redis 相关
运行安装向导现在访问主机 IP 可以看到欢迎页面了,记得选择数据库类型为 PostgreSQL:
恭喜,你的皮肤站已经部署完成!更多的内容就自己去探索吧~善用官方文档与搜索引擎:Blessing Skin 手册 | Blessing Skin 用户手册
备份 & 恢复相关咳咳,这一段其实才是我写这篇文章的初衷写一下备份&恢复相关的步骤免得自己忘了
好的,假设你有一个已经架设好了的 Blessing Skin 皮肤站,然而现在遇到了一个问题使得你需要 备份你的数据并且日后要恢复正常运行,那么就往下看
备份数据备份数据库先切换到 postgres 用户并且切换到对应目录:
12sudo su postgrescd然后使用 pg_dump 命令备份数据库:
1pg_dump -U postgres blessingskin > blessingskin_backup.sql此处指令的 blessingskin 为你要导出的数据库名称,blessingskin_backup.sql 是备份后的文件名称
导出之后可以使用 pwd 指令来查看当前目录,你的备份文件也会在这里。随后使用 Filezilla 之类的 SFTP 软件将其下载到本地即可。
备份站点文件记得先切换回原用户
切换到你的皮肤站站点目录的上一级目录
1cd /var/www将其打包 or 压缩
打包:
1tar -cvf blessingskin.tar blessingskin压缩:
使用7z指令压缩需要安装 p7zip-full 软件包
17z a -t7z -r blessingskin.7z /var/www/blessingskin二者选其一即可。随后将打包后的文件下载到本地就完成备份了。
如果你的服务器是像我那样的小破机子就只能用打包了,用不了7z压缩不是都说了不要学我吗啊喂
恢复数据你的环境应该是全新的
准备工作
12345678910111213141516171819202122232425262728293031# 换源sudo sed -i 's@//.*archive.ubuntu.com@//mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.listsudo sed -i 's/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.listsudo 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# 安装postgressudo 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目录下
12345678910# 切换到数据库用户sudo su postgres# 切换到对应工作目录cd# 恢复备份psql -U postgres -d blessingskin -f blessingskin_backup.sql# blessingskin 是你想将备份文件导入的数据库的名称,blessingskin_backup.sql是你备份的文件然后进入 /var/www 目录下,并且将你的 皮肤站站点文件备份 上传至此解压缩至当前目录:
.tar 文件12# blessingskin.tar 请自行更改为对应文件名tar -xvf blessingskin.tar .7z 文件12# blessingskin.7z 请自行更改为对应文件名7z x blessingskin.7z -r -o/var/www/blessingskin记得修改目录权限
1sudo chown -R www-data:www-data /var/www/blessing-skin接下来的步骤就是配置 Apache 了,按照 配置 Apache 来就行了配置完Apache之后,恢复工作就大功告成了!
有啥问题的可以在当前页面留言~ 💖
参考链接Blessing Skin 手册 | Blessing Skin 用户手册