学习总结录 学习总结录
首页
归档
分类
标签
  • Java基础
  • Java集合
  • MySQL
  • Redis
  • JVM
  • 多线程
  • 计算机网络
  • 操作系统
  • Spring
  • Kafka
  • Elasticsearch
  • Python
  • 面试专题
  • 案例实践
  • 工具使用
  • 项目搭建
  • 服务治理
  • ORM框架
  • 分布式组件
  • MiniSpring
  • 设计模式
  • 算法思想
  • 编码规范
友链
关于
GitHub (opens new window)
首页
归档
分类
标签
  • Java基础
  • Java集合
  • MySQL
  • Redis
  • JVM
  • 多线程
  • 计算机网络
  • 操作系统
  • Spring
  • Kafka
  • Elasticsearch
  • Python
  • 面试专题
  • 案例实践
  • 工具使用
  • 项目搭建
  • 服务治理
  • ORM框架
  • 分布式组件
  • MiniSpring
  • 设计模式
  • 算法思想
  • 编码规范
友链
关于
GitHub (opens new window)
  • 案例实践

  • 工具使用

  • 项目搭建

    • 博客搭建
      • 前言
      • 博客的分类和优势
      • 博客的搭建
        • 静态博客搭建
        • 动态博客搭建
        • 动态博客——WordPress
        • 动态博客——halo
      • halo文档说明
        • 更新软件包
        • 安装Java运行环境
        • 创建halo用户
        • 安装halo
        • 下载配置文件
        • 修改配置文件
        • 下载jar包
        • 进阶配置
        • 配置域名访问
      • 说明
    • 对象存储搭建静态博客
  • 服务治理

  • ORM框架

  • MiniSpring

  • 案例归档
  • 项目搭建
旭日
2023-03-31
目录

博客搭建

# 前言

我记得当时大一大二的时候对博客的认知就是在什么博客园、CSDN这样的平台上写博客,当时我对于博客认知可能不光是记录自己技术的成长,更是记录自己的生活吧。后来无意看到一篇文章下面的博客地址是域名,出于好奇点了进去,发现人家博客内容真的很丰富,那时候就期待自己能有一个真正属于自己的博客。大三的时候看了一些视频利用GitHub搭建了一个静态博客,后面因为考研没这么去完善。当时就想着考完研好好去搭建一个动态博客,也是那时候我接触了halo,借着这几天踩的坑,写一篇关于博客搭建的文章。同时也激励自己,在这个快餐化的物联网时代,能够脚踏实地落实自己的基础知识,敬畏知识!

# 博客的分类和优势

再讲博客分类之前,建议大家去看看b站大佬Codesheep的这个视频为什么要搭建博客 (opens new window),之前博客搭建也基本上学习他的。作为科班的大佬前辈,很多方面值得我们大学生学习,大家也可以多多关注这位UP主,相互勉励、相互学习。 对于博客的分类,我觉得大致上就两类。 1. 静态博客:利用GitHub等搭建。

  • 优点:无需使用服务器、搭建比较方便。
  • 缺点:相应的速度可能比较慢、同时后台管理不如动态那么方便(使用git管理),个人觉得最重要的就是装逼不够彻底。

2. 动态博客:利用halo、wordpress搭建。

  • 优点:响应速度快(毕竟使用的都是腾讯、华为、阿里这些大厂的服务器),后台管理方便(有了图形界面大家肯定用得就很舒服)。
  • 缺点:那当然就需要一定费用了(但是如果你是学生那么优惠还是很大的),同时一般大家都想要通过域名绑定,那么域名方面还需要一定的费用。同时在部署方面,可能就需要一定linux基础,稍微复杂一点点。

博客的分类

大家根据实际的情况进行选择,总之博客的分类和外在都是其次,一个博客最主要、最核心的还是其内容。

# 博客的搭建

# 静态博客搭建

静态博客这边就不细说了,如果大家有需要就去参考B站CodeSheep的视频应该就不会有什么问题。

# 动态博客搭建

动态博客需要一定时间,这边我提供Halo和WordPress两种方案,具体以halo为主。

  • 首先请各位准博主去购买云服务器和域名(学生的话是有优惠的,可以具体留意一下),服务器方面轻量应用服务器都可以。如果只是单纯做博客的话,服务器1核、2GB内存就够用了。服务器初始选择CentOS系统也就是linux系统。++然后把服务器改了密码之后,服务器和域名一定要实名、备案,这个周期可能需要一点时间,大家耐心等待就好,这段时间大家可以多去参考网上视频和网站为后续博客搭建做准备。这边由于涉及到我服务器相关信息,这边就不放图了,大家有任何问题欢迎来咨询我。++
  • 各位备案完成之后,就可以利用你购买于域名的对应平台完成对应的域名绑定。这样后续博客搭建完毕之后,大家就可以通过域名访问你的博客了。自此前期的工作基本就完成。但是现在如果你去访问你的公网ip是没法成功的,因为现在你还没有设立站点,所以大家不要惊慌。一步一步慢慢来。
  • 接着大家就可以根据自己的爱好,选择相应的博客搭建工具完成博客的搭建。

# 动态博客——WordPress

WordPress的搭建,大家可以参考这个视频。博客搭建——WordPress (opens new window)

# 动态博客——halo

halo的搭建,也是比较简单的,大家去halo的官网对着相应的halo用户文档 (opens new window)进行操作就可以,这边我会根据我的实际情况来带着大家慢慢部署,如果大家比较喜欢参照视频方式部署的话,这边去参考这个视频。博客搭建——halo (opens new window)

下载一个远程登录软件比如xshell或者finalshell登录你的服务器,然后对着用户文档输入对应的linux指令即可。

# halo文档说明

下面结合自我情况,对halo一些文档进行说明,具体的文档参考halo用户文档 (opens new window)

# 更新软件包

这边更新服务器的软件包,尽量在网络条件较好的情况进行,如果遇到卡顿不要中途退出,多等一等。等到complete的提示出现即可。

sudo yum update -y

# 安装Java运行环境

# 安装 OpenJRE
sudo yum install java-1.8.0-openjdk -y
# 检测是否安装成功
java -version

# 创建halo用户

如果不熟悉linux的同学直接跳过这一步就好了,因为基本上你的博客也都是你自己管理,全程用root用户也可以。

# 安装halo

halo是基于SpringBoot开发的Java程序,后面大家有空可以在Windows跑跑这个项目,还可以学习不少关于JavaWeb和SpringBoot相关的知识。

# 下载配置文件

# 下载配置文件到 ~/.halo 目录
curl -o ~/.halo/application.yaml --create-dirs https://dl.halo.run/config/application-template.yaml

# 修改配置文件

对linux熟悉的同学可以进去看看,但是几乎对于前期而言这个配置文件无需修改。++重点!!!,请在你的服务器的安全组开放8090的端口!++

# 使用 Vim 工具修改配置文件
vim ~/.halo/application.yaml

# 下载jar包

官方文档这边是运行halo

# 下载最新的 Halo 安装包,{{version}} 为版本号,不带 v,更多下载地址https://halo.run/archives/download.html
wget https://dl.halo.run/release/halo-{{version}}.jar -O halo-latest.jar

这里版本目前最新的是1.4.2,大家就可以直接采用下面一段

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

下载完毕之后,暂时不必运行hao,我们把所有配置都完成了,再去运行。

# 进阶配置

我们需要去设置一个配置文件让halo自动启动。

# 下载 Halo 官方的 halo.service 模板
sudo curl -o /etc/systemd/system/halo.service --create-dirs https://dl.halo.run/config/halo.service

下载完成之后,我们还需要对其进行修改。

# 修改 halo.service
sudo vim /etc/systemd/system/halo.service

打开之后我们可以看到

[Unit]
Description=Halo Service
Documentation=https://halo.run
After=network-online.target
Wants=network-online.target

[Service]
User=USER
Type=simple
ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar YOUR_JAR_PATH
ExecStop=/bin/kill -s QUIT $MAINPID
Restart=always
StandOutput=syslog

StandError=inherit

[Install]
WantedBy=multi-user.target

这边halo文档的参数说明很详细。如果你是参考我这个文档的话,有两处需要更改的地方。

  • YOUR_JAR_PATH:Halo 安装包的绝对路径,修改为/root/halo-latest.jar
  • USER:删除 ++User=USER++

这边不太清楚自己的jar包在什么位置,可以利用远程登录软件或者宝塔等去查看一下。

# 修改 service 文件之后需要刷新 Systemd
sudo systemctl daemon-reload

# 使 Halo 开机自启
sudo systemctl enable halo

# 启动 Halo
sudo service halo start

# 重启 Halo
sudo service halo restart

# 停止 Halo
sudo service halo stop

# 查看 Halo 的运行状态
sudo service halo status

# 配置域名访问

相关具体操作请参考:halo配置域名访问文档 (opens new window)

配置域名方面有两种方式:Nginx进行反向代理和Caddy进行反向代理。这里推荐后者。

安装Caddy

# 安装 Caddy 软件包
yum install caddy -y

配置Caddy

# 下载 Halo 官方的 Caddy 配置模板
curl -o /etc/caddy/conf.d/Caddyfile.conf --create-dirs https://dl.halo.run/config/Caddyfile

下载完成之后,我们还需要对其进行修改。

# 使用 vim 编辑 Caddyfile
vim /etc/caddy/conf.d/Caddyfile.conf

打开之后我们可以看到

https://www.simple.com {
 gzip
 tls xxxx@xxx.xx
 proxy / localhost:port {
  transparent
 }
}
  1. 请把 https://www.simple.com 改为自己的域名。
  2. tls 后面的 xxxx@xxx.xx 改为自己的邮箱地址,这是用于自动申请 SSL 证书用的。需要注意的是,不需要你自己配置 SSL 证书,而且会自动帮你续签。
  3. localhost:port 请将 port 修改为 Halo 的运行端口,默认为 8090。

多网址重定向到主网址,比如访问 simple.com 跳转到 www.simple.com 在原有的基础上添加如下配置。

https://simple.com {
  redir https://www.simple.com{url}
}

将 https://simple.com 和 https://www.simple.com{url} 修改为自己需要的网址就行了,比如我要求访问 ryanc.cc 跳转到 www.ryanc.cc,完整的配置如下:

https://ryanc.cc {
  redir https://www.ryanc.cc{url}
}

https://www.ryanc.cc {
  gzip
  tls i@ryanc.cc
  proxy / localhost:8090 {
    transparent
  }
}

修改完成之后启动 Caddy 服务即可。

# 开启自启 Caddy 服务
systemctl enable caddy

# 启动 Caddy
service caddy start

# 停止运行 Caddy
service caddy stop

# 重启 Caddy
service caddy restart

# 查看 Caddy 运行状态
service caddy status

完成上面的操作后,你就可以试一试域名访问或者IP:8090访问你的博客了。

# 说明

本人也是一个博客新手,这篇博客内容是我综合网上文档和自身情况结合写出来的,也是第一次写博客,如果有任何问题请各位大佬指出、批评。同时在博客搭建上有任何问题,欢迎各位小伙伴留言或者直接添加QQ微信,希望我能够帮助到你。

上次更新: 2024/06/29, 15:13:44
Groovy
对象存储搭建静态博客

← Groovy 对象存储搭建静态博客→

最近更新
01
基础概念
10-31
02
Pytorch
10-30
03
Numpy
10-30
更多文章>
Theme by Vdoing | Copyright © 2021-2024 旭日 | 蜀ICP备2021000788号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式