此文梳理博客搭建流程,同时方便自己以后回顾。
一、选购域名与服务器
选购域名、服务器。
二、绑定域名与服务器
在域名商的控制台中,设置 DNS 解析,将域名指向服务器 IP 地址。通常是配置 A 记录(IPv4 地址)或 4A 记录(IPv6 地址)。接着等待 DNS 解析生效(快则几分钟、慢则24小时或以上)。
三、安装服务器环境
根据网站技术栈,安装所需的服务环境(Web 服务器、数据库、编程语言等)。这里有两种选择:
连接 Linux 终端,直接用
apt install xxx
命令安装软件包选用 Web 图形界面管理 Linux 服务器,俗称面板,比如 1Panel、宝塔面板。其中1Panel,部署后在其应用商店下载所需工具与软件即可,同时其支持一键部署本博客正使用的Halo建站工具;宝塔面板,部署登录后面板会提示下载推荐配置,跟着推荐流程走或者自己在应用商店下载。
建站之初,经过调研、结合需求后选择使用 Halo 工具来搭建博客,因此直接选择能一键部署 Halo 工具的 1Panel 面板,然而使用 1Panel + OpenResty 的组合部署网站时发生问题,查阅官方文档、搜寻社区相关内容无果将其卸载,部署了宝塔面板。之后用宝塔 + Nginx 的组合部署好网站,过程中顺带接触、学习到了一点 Nginx 配置方法。
放开服务器端口
这步操作可以在放在任意步骤做,但不能忘了。在服务器商控制台放开安装的服务所用到的端口,不然服务就无法访问/拒绝访问。
四、部署 Halo 建站工具
在面板中下载 Docker,终端输入sudo docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 registry.fit2cloud.com/halo/halo:2.19
部署好 Halo 之后就可以使用http://服务器地址:8090
访问 Halo 博客控制台了。
五、配置网站
反向代理
打开宝塔 -> 网站 -> 添加站点(填写域名) -> 反向代理 -> 把端口号代理上去(URL:http://127.0.0.1:8090
)
安装SSL证书
可以自行选择购买SSL证书或者使用 Let's Encrypt 免费申请证书,证书过期后需要手动续期。我选择使用 httpsok 工具申请免费SSL证书,同时它可以自动更新证书。
通过以上步骤,可以使用域名直接访问博客,而无需通过http://服务器地址+端口号
的方式。
六、上传网站文件
需要给服务器上传文件时可以选择:
FTP 或 SFTP 访问:通过文件传输协议(FTP/SFTP)工具,将网站文件上传到服务器的指定目录。
Git 部署:通过
git clone
命令将代码拉取到服务器上。直接使用宝塔面板上传
七、网站优化
使用 CDN(内容分发网络)提高网站的加载速度和性能。
通常步骤为:
选择 CDN 服务提供商,将网站流量通过 CDN 进行分发
配置 DNS 设置:添加或修改 CNAME 记录,将网站域名指向 CDN 提供商提供的 CDN 服务器域名
配置 CDN 服务:源站配置、缓存规则、SSL证书、访问控制等
启用 CDN 服务
其他
SSH 工具
选用 Xterminal
闲言
一些记录:
起初,将 DNS 解析到 Cloudflare(免费 SSL证书、免费 CDN加速),然而配置好一个网址正常访问后,再配置另一个网址访问却返回证书错误,试图排查原因(源证书、Origin Rules、边缘证书等)未果只能放弃使用。
在做 Radio 项目时,我想将 .mp3音乐文件用宝塔上传至服务器,由于有几首歌的歌名中包含
&
字符,宝塔按规则不允许这几首上传。开始是直接用“上传文件/文件夹”功能从Windows本地中上传,随后我改变了思路,先将这几首歌的 .mp3文件原封不动上传到了临时网盘里,再使用宝塔上传功能的“URL链接下载”,结果竟然成功了……我心想,这时候你咋不判断拦截敏感字符了呢?🙄
一些备忘:
配置 Open WebUI 时,
docker run
命令需要添加-e HF_ENDPOINT=https://hf-mirror.com
以使用 HuggingFace 镜像进行相关文件的下载。
Todo List
🔘网页样式进一步优化
🔘Radio项目音乐播放延迟较高,待优化
🔘网页中光标移动之处设置蓝色渐变光染效果
🔘搭建流程中的有些细节忘了,回想起来续写博客
☑️多喝热水