开源博客halo搭建个人博客

halo搭建

在看大佬的文章时候发现大佬的博客用的halo,然后看了一下halo的搭架文档。Halo是一款使用Java开发的开源博客系统,使用的Spring Boot框架,只需要一行命令便可完成安装。搭建特别简单,此文记录搭建过程。

首先需要一台服务器,需要域名访问的话还需要注册一个域名并备案,我购买的腾讯云轻量应用服务器,双11活动很合适,会linux基础就可以轻松操作。域名已申请,正在备案中。

服务器开放8090端口,halo默认运行端口号。开源博客halo搭建个人博客_第1张图片
安装jdk
sudo yum install java-1.8.0-openjdk -y
检测是否安装成功
java -version
下载halo安装包
wget https://dl.halo.run/release/halo-1.4.2.jar -O halo-latest.jar
启动测试
java -jar halo-latest.jar
设置开机自启和后台运行
下载 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=halo**
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
  • -Xms256m:为 JVM 启动时分配的内存,请按照服务器的内存做适当调整,512 M 内存的服务器推荐设置为 128,1G 内存的服务器推荐设置为 256,默认为 256。
  • -Xmx256m:为 JVM 运行过程中分配的最大内存,配置同上。
  • YOUR_JAR_PATH:Halo 安装包的绝对路径,例如 /www/wwwroot/halo-latest.jar。
  • User名为当前用户名,如果不是halo,填你当前的用户名(管理员权限)

查找文件位置
find . -name ‘halo-latest.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

完成以上操作即可通过 IP:端口 访问了.

配置域名访问
在腾讯云平台云产品中找到,域名注册,注册一个自己心仪的域名
开源博客halo搭建个人博客_第2张图片

之后进行网站备案
开源博客halo搭建个人博客_第3张图片

扫码后在微信小程序完成备案,按照提示填写资料等待审核即可
开源博客halo搭建个人博客_第4张图片

腾讯云审核一般7个工作日,工信部审核一般15个工作日,工信部审核期间会发送一个短信来验证,需要及时回复。
再次点击域名注册,我们就可以看到自己的域名列表,点击解析
开源博客halo搭建个人博客_第5张图片
开源博客halo搭建个人博客_第6张图片

点击快速添加网站/邮箱解析即可

使用 Nginx 进行反向代理
安装 Nginx
添加 Nginx 源

sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

安装 Nginx

sudo yum install -y nginx

启动 Nginx

sudo systemctl start nginx.service

设置开机自启 Nginx

sudo systemctl enable nginx.service

配置 Nginx
下载 Halo 官方的 Nginx 配置模板

curl -o /etc/nginx/conf.d/halo.conf --create-dirs https://dl.halo.run/config/nginx.conf

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

使用 vim 编辑 halo.conf

vim /etc/nginx/conf.d/halo.conf

打开之后我们可以看到

server {
    listen 80;

    server_name example.com www.example.com;

    location / {
        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;

        proxy_pass http://127.0.0.1:8090/;
    }
}

注意:请把 example.com和www.example.com改为自己的域名,例如changpx.com www.changpx.com。

修改完成之后
检查配置是否有误

sudo nginx -t

重载 Nginx 配置

sudo nginx -s reload

配置 SSL 证书
安装 certbot 以及 certbot nginx 插件

sudo yum install certbot python2-certbot-nginx -y

执行配置,中途会询问你的邮箱,如实填写即可

sudo certbot --nginx

自动续约

sudo certbot renew --dry-run

到这里,关于 Nginx 的配置也就完成了,现在你可以访问一下自己的域名,并进行 Halo 的初始化了。

在设置了反向代理之后,请一定记得去 Halo 的管理端设置一下正确的博客地址,否则可能会造成资源获取不成功。

现在你可以开始愉快的写作了。

你可能感兴趣的:(其他,开源,java,前端)