Halo博客安装教程

  • 3,942
  • 2021年4月16日17:17:06


教程已更新!2021年4月10日。
本教程将使用nginx的certbot插件自动配置https。
欢迎光临我的halo博客:https://blog.ysboke.cn


前置要求

会ssh远程连接、域名已经解析到服务器ip上即可,

安装步骤

按照下面一步一步来,应该是木有问题的哦

ssh连接好,依次输入执行以下命令,可能中间会卡顿,耐心等待即可

安装 OpenJDK11(当前版本已不再支持jdk8)

sudo yum install java-11-openjdk -y

创建目录:

mkdir ~/app && cd ~/app

下载halo的jar包(注意,请自己访问https://dl.halo.run/release/
查看最底部最新的版本号,我这里是1.4.8最新,所以下面的下载有个1.4.8,你下载的时候最新版就不一定是这个了,自己替换掉下面的1.4.8就行):

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

创建halo的工作目录.halo,.表示这是个隐藏目录。

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

下载配置文件:

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

使用 Vim 工具修改配置文件

vim application.yaml

接着,英文状态下,按i进入编辑模式,修改这里的账号密码即可,随意改,但是要记住,不过一般用不到(除非你要直接操作数据库才用得到)。
在这里插入图片描述
改好后,英文状态下按ESC键,再输入 :wq 即可保存退出

接着我们下载配置:

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

修改:

vim /etc/systemd/system/halo.service

你要改哪里呢?
image.png
因为我跳过了创建用户的选项,所以1出哪一行删掉。
2处请把YOUR_JAR_PATH替换成你的halo.jar的安装位置,例如我的为 /root/app/halo.jar

修改 service 文件之后需要刷新 Systemd

sudo systemctl daemon-reload

使 Halo 开机自启

systemctl enable halo

启动 Halo

systemctl start halo

到这里就可以用ip访问了,你可以先试试看,不过最好先完成域名配置。

域名配置

这里有两种配置域名的方法,一种是使用宝塔运维面板,特点是自动续签https;另一种是使用certbot插件配置https。web服务器都用nginx。
建议方法2,能学到一点东西。千万不要试玩方法1中途转到方法2,可能冲突。

方法一:宝塔面板

宝塔面板安装:https://www.bt.cn/download/linux.html

其中,centos系统的话是输入:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

等待几分钟,中途确认回车
最后安装好后,ssh会显示宝塔的登录地址、账号、密码,全都保存记住
然后别忘了到服务器安全组里放行8888端口,不然你是访问不了宝塔面板的哦
然后浏览器访问地址,并输入账号密码登录宝塔面板
不要安装别的,只需要在软件商店里搜索nginx,选择极速安装即可,大概要5分钟装好

接下来,比如我的域名是https://www.ysboke.cn(一级域名解析www记录到ip上(这我都解释,够良心了吧))
在宝塔“网站“栏目,添加站点,域名输入www.ysboke.cn,确认创建即可
然后在网站右边点开设置,ssl,申请、部署证书。宝塔ssl或者第二个都行。

然后点“配置文件”,将第48行开始以下的内容替换成下面的,进行反向代理

   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/;
    }

}

注意最后一个}别忘了
然后回到“软件商店”、“已安装”下的nginx,点开后选择“重载配置”。
完事。

方法二:certbot

首先安装nginx:

yum install nginx

依次每行输入以下命令安装certbot:

yum install snapd

systemctl enable --now snapd.socket

ln -s /var/lib/snapd/snap /snap

snap install --classic certbot

ln -s /snap/bin/certbot /usr/bin/certbot

certbot --nginx

certbot renew --dry-run

过程中会提升让你输入东西,分别输入邮箱、输入y确认、输入域名对应的序号。完事
回到halo后台把博客地址加上https即可


小白帮助

域名解析请在域名控制台里添加一条A记录,主机为域名前缀,例如我的是blog
值为服务器ip地址

你可以参考我的nginx配置:

user nginx;
worker_processes auto;
pid /run/nginx.pid;

events {
    worker_connections 1024;
}

http {

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        limit_conn_zone $binary_remote_addr zone=perip:10m;
        limit_conn_zone $server_name zone=perserver:10m;

upstream halo {
  server 127.0.0.1:8090;
}
    server {
        server_name  blog.ysboke.cn;
        client_max_body_size 1024m;

        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://blog.ysboke.cn), 转载请带上地址.。
    • aaa
      aaa

      你好请问一下你的主题是哪个?

      • 石头
        石头

        有用

      匿名

      发表评论

      匿名网友