1. 备份博客文章和相关设置
1.1 将博客数据导出
1.2 将数据文件下载
2. 将域名解析到新的服务器ip
可以使用 cloudflare 将 zhangleistudy.com 这个域名解析到新的服务器 ip 地址。(这步省略,不会自行google)
3. 将博客装上 centos 7(或7.x)并远程连接服务器
在服务器后台操作。
4. 安装 java 环境
4.1 安装 jdk
sudo yum install java-11-openjdk -y
4.2 检查版本
java -version
如果出现下列版本信息,则表示安装成功:
5. 下载 halo.jar 及配置文件 application.yaml
5.1 创建存放 jar 包的目录
mkdir ~/app && cd ~/app
5.2 创建工作目录
mkdir ~/.halo && cd ~/.halo
5.3 下载 halo.jar
使用我之前存下来的:
链接:https://pan.baidu.com/s/1SKrmjEyD0g8bD-EYcWQSIw
提取码:halo
--来自百度网盘超级会员V5的分享
将这个 halo.jar 文件通过 sftp 移动到 ~/app 目录中:
也可以使用如下命令下载:
首先切换到 ~/app 目录下:
cd ~/app
使用命令下载 jar 包:
wget https://dl.halo.run/release/halo-1.5.2.jar -O halo.jar
5.4 下载示例配置文件到 工作目录
5.4.1 切换到工作目录
cd ~/.halo
5.4.2 使用命令下载示例配置文件
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
5.5 测试运行 halo
cd ~/app && java -jar halo.jar
看到以下输出,则启动成功:
按 ctrl+c 结束。
5.5.1 打开浏览器,输入 http://ip: 端口号 看有没有安装引导界面
选择数据导入,将在 1.2 节下载下来的 json 文件导入进去:
6. 将 halo 作为服务运行
6.1 下载 halo 官方的 halo.service 模板
wget --no-check-certificate https://dl.halo.run/config/halo.service -O /etc/systemd/system/halo.service
6.2 修改 halo.service 文件
vim /etc/systemd/system/halo.service
改后如下:
保存退出。
6.3 重新加载 systemd
systemctl daemon-reload
6.4 运行服务
systemctl start halo
6.5 在系统启动时启动服务
systemctl enable halo
7. 现在nginx 进行域名反代
7.1 命令下载 nginx
sudo yum install nginx
7.2 启动 nginx
sudo systemctl start nginx
7.3 查看 nginx 状态
sudo systemctl status nginx
如果出现 active 则表示 nginx 启动成功:
7.4 设置 nginx 开机自启
sudo systemctl enable nginx
7.5 将证书文件放入 /etc/xray_cert文件夹中
7.5.1 切换到 /etc目录
cd /etc
7.5.2 创建 xray_cert文件夹
mkdir xray_cert
7.5.3 将 .crt 和 .key文件通过 sftp 传到 xray_cert文件夹中
7.6 修改 nginx 文件实现反代
vim /etc/nginx/nginx.conf
替换成如下内容:
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#keepalive_requests 100;
#gzip on;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
# SSL configuration can be placed here for global settings or inside server blocks
server {
listen 443 ssl http2;
server_name zhangleistudy.com;
ssl_certificate /etc/xray_cert/xray.crt;
ssl_certificate_key /etc/xray_cert/xray.key;
ssl_protocols TLSv1.2 TLSv1.3;
# other SSL configurations
location / {
proxy_pass http://localhost:8090;
# other proxy settings
}
# Logging
access_log /var/log/nginx/zhangleistudy_access.log;
error_log /var/log/nginx/zhangleistudy_error.log;
}
server {
listen 80;
server_name zhangleistudy.com;
location / {
return 301 https://$host$request_uri;
}
}
# Additional server blocks can be added here
}
保存退出。
7.7 重启 nginx
sudo systemctl restart nginx
7.8 访问域名即可访问网站
8. 主题
使用我自己最喜欢的简约主题,zip文件如下:
链接:https://pan.baidu.com/s/1J7jQVyVo6szeZ2NxFKzGbA
提取码:them
--来自百度网盘超级会员V5的分享