部署该博客
该项目的官网:http://halo.run
一、下载
二、运行
1.试运行
java -jar halo.jar
2.挂载到后台
使用nohup工具。nohup = no hang up,即表示不挂断的运行。
格式为: nohup [Command] &
nohup java -jar halo.jar > nohup.out 2>&1 &
解释:
nohup.out 表示将运行的信息输出到nohup.out里面
2>&1 表示将标准错误(2)重定向到标准输出(&1)中
& 指在后台运行
attention
nohup [Command] | 将该任务挂载到后台,关闭标准输入(终端不会在接受任何输入)
---|---:|
nohup [Command] & | `将该任务挂载到后台,但是依然可以使用标准输入
3.使用nginx配置反向代理
为了和之前部署的一个导航页分开,使用nginx配置该项目
http {
...
server {
...
location / {
proxy_pass http://xxx:8090;
}
location /xxx {
proxy_pass htpp://xxx:xxx;
}
}
}
配置成功后,发现其中一个项目无法正常浏览,具体表现为静态文件无法加载(404 Not Found)。
解决方法: 在server块中加入以下内容:
location ~ .* {
proxy_pass http://localhost:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
具体为什么,我也没搞清楚。不过加上这个后问题得以解决。。。
参考链接
三、halo
- halo的数据库是用的H2,所以一切物理文件都在~/.halo里面,以后做迁移可以直接备份该文件。
四、过程中擦边的小知识
- 通过shell获取相关进程
pgrep -f name获取该名的pid进程
pkill -f name找到该名的进程并杀掉
Bash Shell 获取进程 PID - 复习
① 创建文件夹mkdir folder-name
② 创建文件touch filename
③ 删除文件夹rm -r folder-name-r表示强制删除
④ 删除文件rm -f filename-f表示不提示
⑤ vi 进入编辑模式i
⑥ vi 退出编辑模式ESC
⑦ vi 保存并退出:wq!
⑧ vi 强制退出:q!
⑨ 查看相关进程ps -ef | grep name
⑩ 关闭相关进程kill -9 pidpid是查到的进程号
2020-3-15
vi 删除光标到末尾的内容 :.,$d
2020-3-16
原创
部署的一些小细节问题
本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
评论交流
欢迎留下你的想法