重新打造的我的Pugo
Pugo博客已经搭建了好几个月了吧,给我感受到非常方便的就是,我换了好多VPS,迁移显得非常的方便,但是也有不足的地方,比如发布一篇新的博客,我每次都需要重新进入后台进行新的Post,还需要重新build我的博客,这样才能将博客发布出去,和那些经典的带有后台管理的博客相比就有点不太舒服,后来找了一些资料,查了一些开源项目。在github里面发现了一个叫做filemanage的工具,现在已经改名叫File Browser了,现在用这个工具做博客的后台,感觉还不错,下面记录下我是如何从头开始搭建我的博客系统的。
1、准备工具
Pugo 软件包:
https://github.com/go-xiaohei/pugoFileBrowser:
https://github.com/filebrowser/filebrowser
2、搭建Pugo博客
从gitHub下面下载软件包之后,我们解压,将软件包上传VPS,或者可以在本地先搭建试试看也可以。
PS:注意不同的平台,文件不一样。
下载解压之后,进入文件所在目录运行下面指令
pugo.exe new site # Windows
./pugo new site # Linux
此时在pugo的目录下面生成了好多个文件夹,下面我们运行下面的命令。
pugo server --addr "0.0.0.0:8080"
运行完成之后可以看到下面的一些消息:
C:\Users\zhang\Desktop\windows_amd64>pugo_windows_amd64.exe server --addr "0.0.0.0:8080"
[32mINFO[0m|08-25 18:00:32.4916|Build|Start
[32mINFO[0m|08-25 18:00:32.5255|Build|Source|source
[32mINFO[0m|08-25 18:00:32.6123|Build|Theme|theme/default
[32mINFO[0m|08-25 18:00:33.2057|Build|40 Pages
[32mINFO[0m|08-25 18:00:33.2057|Build|Done|1|714.1ms
[32mINFO[0m|08-25 18:00:33.2067|Watch|Start
[32mINFO[0m|08-25 18:00:33.2067|Server|Start|0.0.0.0:8080
此时我们的博客已经运行起来了,通过浏览器访问localhost:8080就可以看到博客的运行界面。
我们想要Post一篇文章只要如下所示就好了
pogo new post [name]
此时在我们的Source-> Post->2018下面会生成一个.md结尾的文本,使用Winscp或者其他的Sftp工具可以登录ssh在Linux服务器上面编写遵循markdown语法的文章就好了。
3、给Pugo加上后台---File Browser
通过Winscp将我们下载好的File Browser 上传到我们的VPS,在File Browser 下面新建一个config.json文本文档,内容如下所示:
{
"port": 8000,
"noAuth": false,
"baseURL": "/admin",
"address": "0.0.0.0",
"reCaptchaKey": "",
"reCaptchaSecret": "",
"database":"/myserver/blog/filemanager/filebrowser.db",
"log": "stdout",
"plugin": "http.filemanager",
"scope":"/myserver/blog/filemanager/myblog",
"allowCommands": true,
"allowEdit": true,
"allowNew": true,
"commands": [
"git",
"svn",
"./myblog/flush.sh",
"./myblog/new.sh"
]
}
Port :访问的端口号
baseURL:要访问的地址,如上面所写,就访问"http://127.0.0.1:8000/admin"
address:监听的地址,四个0表示监听所有网卡。
datebase:数据库所在目录,通常设置和fileBrowser一个目录
command:允许执行的shell命令。
"scope":管理的目录
主要修改的如上所示,其他的默认就好,将pugo整个拷贝到scope 管理的目录下面。
运行如下:
./fileBrowser -c "config.json"
浏览器打开"localhost:8000/admin"输入admin,admin登录系统,分配账号在pugo所在的目录新建一个shell脚本,内容如下:
#!/bin/bash
cd /myserver/blog/filemanager/myblog/
./pugo_linux_amd64 build --source "source"
cd /
保存取名"flush.sh",然后在设置->全局设置->命令(Linux 代码)->After Save 下面输入运行flush.sh的命令,如下所示:
./myblog/flush.sh
此时我们在上传完成我们的博客,或者修改完成之后,保存就可以自动刷新了,再也不用的登录ssh去修改博客了。
重新打造的我的Pugo的更多相关文章
- 标准产品+定制开发:专注打造企业OA、智慧政务云平台——山东森普软件,交付率最高的技术型软件公司
一.公司简介山东森普信息技术有限公司(以下简称森普软件)是一家专门致力于移动互联网产品.企业管理软件定制开发的技术型企业.公司总部设在全国五大软件园之一的济南齐鲁软件园.森普SimPro是由Simpl ...
- Android ViewPager打造3D画廊
本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 网上有很多关于使用Gallery来打造3D画廊的博客,但是在关于Gallery的官方说法中表明: This cl ...
- [.NET] 打造一个很简单的文档转换器 - 使用组件 Spire.Office
打造一个很简单的文档转换器 - 使用组件 Spire.Office [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6024827.html 序 之前,& ...
- 【转】 FineBI:自助式BI工具打造业务分析的“快与准”
如今的企业经营方式,业务对于数据分析有极大的需求,但却苦于没有数据以及工具的有效支持,业务分析仍就依赖于IT报表制作.而IT方不断地按业务需求去调研.确认业务逻辑,然后取数做报表,其中还要忍受业务的需 ...
- 打造TypeScript的Visual Studio Code开发环境
打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...
- 吐血大奉献,打造cnblogs最新最火辣的css3模板(IE9以下请勿入内) -- 第一版
一直自己都想给自己的博客打造一个独一无二的皮肤,但是一直没有强劲的动力去完成这件事情.后来凭借着工作上面的需求(涉及到css3),就把自己的博客当成一个最好的试验场地.从而产生了你现在所看到的这个模板 ...
- [.Net] 手把手带你将自己打造的类库丢到 NuGet 上
手把手带你将自己打造的类库丢到 NuGet 上 序 我们习惯了对项目右键点击“引用”,选择“管理NuGet 程序包”来下载第三方的类库,可曾想过有一天将自己的打造的类库放到 NuGet 上,让第三者下 ...
- 快速打造跨平台开发环境 vagrant + virtualbox + box
工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑 刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电 ...
- 打造android偷懒神器———ListView的万能适配器
如果你去做任何一个项目,我相信你都会跟我有一样的经历,最最普遍的就是列表显示ListView,当然,写N个自定义的适配器也是情理之中.虽说程序员本身就是搬砖,做这些枯燥无味的重复的事情也是理所当然,但 ...
随机推荐
- springboot获取项目跟目录
springboot部署之后无法获取项目目录的问题: 之前看到网上有提问在开发一个springboot的项目时,在项目部署的时候遇到一个问题:就是我将项目导出为jar包,然后用java -jar ...
- Day15-Django
all_entries = Entry.objects.all() #查询所有 Entry.objects.filter(pub_date__year=2006) #查询所有pub_date为2006 ...
- Django学习---信号
Django学习之信号 如果我想对所有在数据库创建数据的时候记录一条日志. 比如我们在django中往数据库中增加一条数据,希望生成一条操作日志,或者在数据保存和数据保存之后都保存一条操作日志,那我们 ...
- python实现socket上传下载文件-进度条显示
在python的socket编程中,可以实现上传下载文件,并且在下载的时候,显示进度条,具体的流程如下图所示: 1. 服务器端代码如下: [root@python 519]# cat server.p ...
- opencv:级联分类器训练(cascade classifier training)(两个分类器的区别)
# 介绍 级联分类器包括两个工作阶段:训练(traning),检测(detection).检测阶段在文档<objdetect module of general OpenCV documenta ...
- open语句对文本和二进制文件的读写
文本文件的操作此种方式是以行为单位进行读取的基本单位,主要应用的方法和函数有Open,Close,Line Input,FreeFile,EOF等.先简述其功能然后结合代码示例进行说明.Open:顾名 ...
- 【转】volatile关键字。编译器不优化,多线程会改。防止随时变动的
来自:http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777432.html 1. 为什么用volatile? C/C++ 中的 vol ...
- maven 中的依赖
- ETL数据仓库
http://blog.csdn.net/leicool_518/article/category/3058299 http://bbs.csdn.net/topics/390349305
- OPENSSL 生成https 客户端证书
下面说下拿服务器证书.(前提是服务器是https,客户端认证用的时候),服务端不给的时候,我们自己去拿(不给怼他!,哈哈,开个玩笑,都会给的) openssl s_client -connect 域名 ...