一、博客的好处

很多程序员、职业投资人、KOL喜欢建立自己的博客系统,为的是让自己有一个知识归纳的工具,也为自己收纳的各种资料有一个线上存储的记事本。到了币圈后,虽然有很多人用Mirro、Medium等文字工具,但这些工具对于中国用户来说是有排版局限性的。

博客对KOL的好处

如果你是KOL,你一定不希望自己写的内容,展现出来的效果是“密密麻麻”都是字,这在美观度上会差一大截。对于媒体人来说,在现在垂类领域专业性的同时,如果你有一个很好的内容展现工具,给读者的首因效应是不是更好,这样用户留存度是不是要好很多。有可能你是一位“半路出家”的KOL,在内容方面与头部差一大截,内容承载方式与其他人拉不开距离,这时如果就应该寻找新的突破口,因为内容基本雷同,这时就可以在展现方式上与他人有所区别。让粉丝今后看到别人“密密麻麻”的内容不止所错时,会想到“有一位排版清晰的KOL”,是不是应该去他那里看看有没有相关知识。那么今天就来讲清楚,即使你是小白,完全不懂编程,该怎么做出去中心化的博客。

二、博客搭建前

在搭建博客前,你需要准备:1、服务器(云服务器、VPS、ECS都可以);
2、SSH工具(Xshell、FinalShell、terminus都可以);
3、域名;
4、一个面板工具(比如宝塔面板);

几个小问题

1、需要编程基础吗?

不需要,对照着教程一步步走,0基础也可以搭建漂亮的博客网站。

2、关于服务器

如果你想保护自己隐私,可以使用海外版;国内服务器需要实名制,使用国内服务器搭建的博客或者网站,需要在工信部备案。

3、关于域名

域名在以上任意平台购买即可,选择性价比最高的。

4、关于面板工具

一般情况下,在服务器中搭建好博客/网站后,需要用面板工具做nginx反向代理(理解成域名绑定)工作。当然也可以在服务器中用命令符执行,但对于新手来说容易出错,所以本教程使用最简单的宝塔面板;宝塔面板有海外版(aapanel),若不习惯可使用国行版,但国行版注册后需要实名制,很多人使用某宝和某鱼解决国行版账号实名问题。

三、搭建博客必经步骤

当你购买好服务器、域名,下载好SSH工具后,就可以开始搭建自己的博客了,本教程按照一下6步进行:

第1步:绑定服务器

这里以Xshell为例,介绍服务器绑定操作。https://www.netsarang.com/en/xshell/ 步骤1 、在Xshell中点击左上角新建(新下载的客户端会自己弹出来);

步骤2、填名称,主机处填购买的服务器的公网IP;步骤3、点击链接,在弹出的兑换框中点“接受并保存”;步骤4、在名称处输入:root

步骤5、输入购买的服务器密码。

面板中出现:WARNING!表示服务器链接成功

第2步:修改服务器端口

一般情况下是不需要修改端口的,但很多人在安装Halo博客时,在验证那一步过不了,为了避免这种重复出错的情况,充哥一般建议事先将端口修改成“8090”;修改端口的方式有好几种,比如win的远程桌面修改法、服务器提供商后台修改法、还有一个比较方便的是命令行修改法,本文介绍的是命令行修改法,主要是比较方便,能在Xshell解决的问题,就不再开多个页面了。我使用的服务器linux系统为centos7,我们来看看服务器的命令行演示端口是如何开放的:

步骤1、查看服务器的防火墙时候打开

在Xshell中输入:
systemctl status firewalld
如果显示active,说明防火墙正常运行;否则需要打开防火墙。

如果没有显示active,请先重连服务器再试一遍,如果还是没有显示active,请跳过下文“步骤2”,用“步骤2”的方法运行防火墙,然后再执行“步骤2”的操作。

 步骤2、对外开放端口

1、查询端口是否对外开放:
firewall-cmd --query-port=8090/tcp
如果开放则显示yes,否则显示no
2、如果没开放,需要执行:
firewall-cmd --add-port=8090/tcp --permanent
3、然后,重新加载防火墙的端口,执行:
firewall-cmd --reload
执行后,再次查看端口对外开放状态,确认端口已对外开放

如果需要取消对外开放的端口,使用: firewall-cmd --permanent --remove-port=8090/tcp 命令

步骤3、运行防火墙

如果你执行上文“步骤1”时显示的是“active”,请忽略这一步;如果没有显示“active”,在确认服务器正常链接后,请执行以下操作;使用指令:
systemctl start firewalld
如果开启失败,先执行:
systemctl unmask firewalld.service
然后,再执行:
systemctl start firewalld.service

第3步:解析域名

购买域名后,需要将域名解析,解析域名一般用:cloudflare.com ;这里以在 namesilo.com 购买的域名为例,做域名解析介绍:

步骤1、在namesilo购买域名后,进入域名管理界面,点击“地图”图标;

步骤2、点旁边的“X”,依次删除历史解析;

步骤3、点击界面上方“Return to my domains”,返回域名管理界面;

步骤4、给域名添加IP;

点击地球图标

在弹出的界面中找到DNS栏,点“A”,进入ip添加界面;

输入服务器ip,保存;

步骤5、进入cloudflare.com添加站点;

新注册的用户一般会进入“添加站点”界面,在“添加站点”处输入购买的域名;

选择免费使用

等待解析,一般十几分钟左右

步骤6、在等待的过程中,点击该界面域名,查找cloudflare名称服务器;

依次复制

 步骤7、进入namesilo域名管理界面,点击最右侧的按钮,准备修改名称服务器;

步骤8、点击“Click here to select our Premium nameservers”,

将cloudflare的2条名称服务器依次粘贴过来;

返回管理界面后,会看到正在处理的英文字符;

刷新一下,看到active,表示名称服务器修改成功。到这里,在namesilo的操作就基本完成了,返回cloudflare等待解析成功即可。

 步骤9、配置DNS

以上步骤走完之后,主页点击你添加的域名,点击DNS,进入DNS配置页面;点击“添加”,类型选择“A”,名称输入“@”,IP地址输入你购买的服务器IP,关掉代理状态,保存。

到这里,整个域名解析就全部完成,我们可以进行博客搭建了。

第4步:开始博客部署代码

(一)检查

官方介绍两种 Linux 发行版的安装方式,均为 OpenJRE,本文使用其中的CentOS系统来搭建博客;接下来的操作要仔细看了,一个字符都不要漏掉。打开Xshell输入
sudo yum install java-11-openjdk -y
检查版本
java -version
如果Xshell输出以下类似内容即代表成功
openjdk version "11.0.16" 2022-08-12 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.16+1-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.16+1-LTS, mixed mode, sharing)

(二)安装

步骤1、创建存放 运行包 的目录,这里以 ~/app 为例

mkdir ~/app && cd ~/app

 步骤2、下载运行包

wget https://dl.halo.run/release/halo-1.5.4.jar -O halo.jar

 步骤3、创建工作目录 (PS:一定要创建这个目录)

mkdir ~/.halo && cd ~/.halo

 步骤4、下载示例配置文件到 工作目录

wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml 

 步骤5、编辑配置文件,配置数据库或者端口等,如需配置请参考 配置参考

官网用vim,有的博主用nano,可能你用的时候就会出现“command not found”这样没有找到的提示:

你只需要将“vim”改成“vi”就可以了;
vi application.yaml

 步骤6、在弹出的界面中,修改用户名和密码;

键盘上下左右建可以移动光标;按下键盘“Insert”,切换到编辑模式;按“Backspace”删除字符,输入字母可重命名。

修改完成后,按“esc”,输入“:wq”,退出并保存。

步骤7、测试运行 Halo

在Xshell输入:
cd ~/app && java -jar halo.jar
如看到类似以下日志输出,则代表启动成功。

步骤8、打开浏览器,输入 http://ip: 端口号 看有没有安装引导界面;

出现上图表示测试以上所有步骤没有问题,我们就可以返回Xshell,按“Ctrl+C”关闭测试。
如果浏览器显示链接失败,说明防火墙没有打开,请返回上文“修改服务器端口”对照着将端口改成8090。

(三)作为服务运行

步骤1、下载 Halo 官方的 halo.service 模板

wget https://dl.halo.run/config/halo.service -O /etc/systemd/system/halo.service

 步骤2、修改 halo.service

vi /etc/systemd/system/halo.service
在弹出的界面中,请做如下操作

1、删除user行2、修改YOUR_JAR_PATH的配置,改成绝对地址;地址查找如下:
点击Xshell上方“新建文件传输”按钮(第一次会提示下载Xftp 7)

在弹出的对话框中,点击“root文件”,点击“app文件”,复制文件行;

返回Xshell,修改地址

建议将 /usr/bin/java -server -Xms256m -Xmx256m -jar /root/app/halo.jar 复制下来;
修改完成后,按“ESC”,输入“:wq”,回车,返回Xshell主界面;
输入刚刚复制的命令,看能不能运行:
/usr/bin/java -server -Xms256m -Xmx256m -jar /root/app/halo.jar
Halo has started successfully!表示设置成功

步骤3、重新加载 systemd

systemctl daemon-reload

步骤4、运行服务

systemctl start halo

步骤5、在系统启动时启动服务

systemctl enable halo
可以查看服务日志检查启动状态
journalctl -n 20 -u halo
到这里,我们在远程服务器上搭建的Halo博客系统已经全部完成,接下来就是注册博客。

第5步:注册博客&下载安装主题

步骤1、在浏览器中输入 http://ip: 端口号,进入博客注册页面,注册博客,安装;

 步骤2、进入博客后台管理界面后,点击“外观”,点击“主题”,点击“安装”,准备安装Halo2.0主题;

步骤3、进入 https://halo.run 官网,点击主题仓库,找到Halo2.0主题,下载;

步骤4、返回Halo博客后台管理器,点击“安装”,点击中间文档提示,将下载好的主题上传到博客后台;

点击“启用”,这是Halo2.0就部署到博客后台了;

查看是否部署成功,点击后台页面左上方的链接,可跳转至博客正式页面;

 步骤5、配置API

进入主页后,你会看到API配置错误;

请参照如下操作:返回用户管理界面后台,点击“设置”、“主题设置”、“基本设置”,复制“AccessKey”栏的字符;

点击“系统”、“博客设置”、切换到高级选项,点击“API设置”,打开“API服务”,粘贴刚复制的“AccessKey”,保存

到这里,整个博客后端部分已经全部部署完成,可以通过IP浏览博客;
如果想给博客配置域名,请看下文“绑定域名”。

第6步:设置反向代理(绑定域名)

进入宝塔官网,注册宝塔;

https://www.bt.cn/new/download.html

切换到前台后,点击“下载安装”;

步骤1、将Centos安装脚本粘贴至Xshell;

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
若Xshell已断开链接,请点击“文件”,重新链接。
出现询问“y/n”时,输入“y”;

 步骤2、待Linux面板安装完成后,复制“外网面板地址”到浏览器中打开;

输入Xshell中提示的账号和密码,进入面板管理工具;
ps:面板地址、用户名、密码请务必记好。
这里建立截图把这些保存下来,如果忘记了可以在SSH中输入bt default重新查看。

步骤3、进入宝塔面板后,关掉系统推荐插件,点击“网站”,在弹出的对话框中点下载;

 步骤4、下载完成后,点击“添加站点”,输入准备好的域名,其他不变,提交

步骤5、设置SSL证书;

点击“网站”,点击“未部署”,点击“Let’s Encrypt”,“申请”;

步骤6、点击“当前证书”,打开“强制HTTPS”,保存

步骤7、点击“设置”,“配置文件”,准备做反向代理;

步骤8、在第一行添加

upstream halo {server 127.0.0.1:8090;
}

步骤9、在“文件配置”中,找到68行,回车,输入官方提供的节点:

location / {proxy_pass http://halo;proxy_set_header HOST $host;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

步骤10、修改location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ 节点

修改成官方节点:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{proxy_pass http://halo;expires      30d;error_log /dev/null;access_log off;
}

 步骤11、修改 server 节点中的 location ~ .*\.(js|css)?$ 节点:

如下图所示: 

将其改成官方节点:
location ~ .*\.(js|css)?$
{proxy_pass http://halo;expires      12h;error_log /dev/null;access_log off;
}
完整配置文件示例(仅包含关键部分):
upstream halo {server 127.0.0.1:8090;
}
server
{...location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${proxy_pass http://halo;expires      30d;error_log /dev/null;access_log off;}location ~ .*\.(js|css)?${proxy_pass http://halo;expires      12h;error_log /dev/null;access_log off; }location / {proxy_pass http://halo;proxy_set_header HOST $host;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}...
}
具体参照官方:https://docs.halo.run/getting-started/install/other/bt-panel/

步骤12、保存

到这里就已经完成博客的所有初步搭建了,后期可以通过域名访问我们的博客。返回博客后台管理器,将域名添加只博客后台即可。

小白也可以,10分钟搭建大气的Halo博客(保姆级教程)相关推荐

  1. 使用Hexo搭建个人博客-保姆级教程

    使用Hexo搭建个人博客-保姆级教材 首先我们看一下最终效果,按照以下步骤最后就可以完成和我一样的博客 https://chen-mingxuan.gitee.io/blog-test/ PS:CSD ...

  2. 10分钟搭建一个免费个人博客网站

    一个程序员怎么能不拥有自己的博客,本文让10分钟快速搭建部署好自己的博客 准备工作 有Gitee账号 有安装git 会 markdown 编写文档 Node.js 版本 >= 8.6 博客采用V ...

  3. hexo —— 搭建个人博客保姆级教程

    之前我去找过很多大佬使用 hexo 搭建博客的文章,大多是 18 19 年的文章,因为这期间 github 发生了下更新,有些东西不配置的话会报错.在这篇文章中,我将会带领大家搭建一个属于个人的博客, ...

  4. 快速搭建个人博客——保姆级教程

    文章目录 序言 本地网站 开发工具 WebStorm Vscode 框架 Hexo(强烈推荐) WordPress 本地环境 git node.js Hexo 安装 初始化 主题 样式 Butterf ...

  5. Hadoop全分布式集群搭建(全网最详细,保姆级教程)

    在上一篇Hadoop环境搭建(全网最详细,保姆级教程)中已经搭建好了一个单机Hadoop环境,接下来搭建全分布式Hadoop集群 首先对Hadoop全分布示集群进行简单介绍和规划 一个集群由一个主机, ...

  6. Hadoop搭建高可用集群(保姆级教程)

    准备工作: 1.搭建完成zookeeper,如果没有搭建,请跳转到zookeeper集群搭建保姆级教程 2.集群的jdk都安装完成,如果没有,请跳转到linux编写个脚本快速搭建jdk保姆级教程 3. ...

  7. 三分钟搭建自己的专属博客(基于Docker solo搭建个人博客)

    我的博客演示:http://49.233.150.105/ 域名备案有些麻烦,所以暂时用ip访问 准备工作 服务器一台(必选),域名一个(可选) 1. Docker部署 不懂参考我这里的教程: lin ...

  8. 手把手教你搭建自己的个人博客(图文教程)

    「 建立自己的狗窝 」 上篇文章刚写了一篇平时写博客的重要性,下面我回复说:[过两天我在发一篇 如何建立自己的个人博客教程,有兴趣的点赞吧]得到了不少赞,看了还是很多小盆友想建立一个属于自己的博客网站 ...

  9. 用Typecho 平台,轻松搭建币圈导航网站(保姆级教程,0基础也能上手)

    如果你是币圈人士,或者互联网从业者,想必你的收藏夹内会有很多链接,久而久之你的收藏夹会混乱不堪,导致你每次找资料的时候都要花时间去翻收藏夹,如果你有自己可定制化的导航网站,工作效率会不会提高一个阶梯? ...

最新文章

  1. Google发布三大新品,Pixel手机价格直逼苹果
  2. 分治法解决最大子数组问题
  3. 软件如何控制硬件、编译器和操作系统是否需要编译
  4. WinForm 限制同一个进程只能打开一次
  5. ABAP string函数一览
  6. 利用JQuery插件CleverTabs实现多页签打开效果
  7. 性能测试——接口、协议篇
  8. ZetCode 绘图教程
  9. linux如何查看端口被哪个进程占用?
  10. 第四章节 窗体应用(windows应用程序)
  11. Makefile中的ifeq 多条件使用 ***
  12. linux-SSH远程服务的管理操作,查看虚拟机信息
  13. 反恐精英代码_知名网游源代码泄漏 ,外挂潮将来?
  14. css3中vw/vh/vmin/vmax的含义与使用方法
  15. 工业农业消防自动检测及报警云方案
  16. iOS和安卓共用同一个二维码实现跳转下载链接
  17. 有穷自动机的最小化c语言代码,无符号数有穷自动机实现.doc
  18. vue怎么把api 挂载到全局_深入理解Vue官方文档梳理之全局API
  19. 51nod - 1204 Parity
  20. java 获取微信头像和昵称 生成图片

热门文章

  1. BadCopy3.0
  2. Faster RCNN代码详解(六):自定义评价函数
  3. 一维条形码ean-13格式编码 最后一位校验码的生成规则 及代码
  4. CocosCreator发布微信子域
  5. Android屏幕锁定详解(一)
  6. 2018年新版超音速启动
  7. window常用命令合集
  8. w ndows7怎么一键恢复,windows7怎么一键还原?windows7恢复出厂设置教程
  9. 信息学奥赛一本通 1157:哥德巴赫猜想
  10. 20210826-Gitee+Hexo+NexT搭建个人博客