Pugo博客已经搭建了好几个月了吧,给我感受到非常方便的就是,我换了好多VPS,迁移显得非常的方便,但是也有不足的地方,比如发布一篇新的博客,我每次都需要重新进入后台进行新的Post,还需要重新build我的博客,这样才能将博客发布出去,和那些经典的带有后台管理的博客相比就有点不太舒服,后来找了一些资料,查了一些开源项目。在github里面发现了一个叫做filemanage的工具,现在已经改名叫File Browser了,现在用这个工具做博客的后台,感觉还不错,下面记录下我是如何从头开始搭建我的博客系统的。


1、准备工具

  1. Pugo 软件包:

    https://github.com/go-xiaohei/pugo

  2. FileBrowser:

    https://github.com/filebrowser/filebrowser

  3. Winscp

    http://www.good-memory.top/2018/4/27/blog.html


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的更多相关文章

  1. 标准产品+定制开发:专注打造企业OA、智慧政务云平台——山东森普软件,交付率最高的技术型软件公司

    一.公司简介山东森普信息技术有限公司(以下简称森普软件)是一家专门致力于移动互联网产品.企业管理软件定制开发的技术型企业.公司总部设在全国五大软件园之一的济南齐鲁软件园.森普SimPro是由Simpl ...

  2. Android ViewPager打造3D画廊

    本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 网上有很多关于使用Gallery来打造3D画廊的博客,但是在关于Gallery的官方说法中表明: This cl ...

  3. [.NET] 打造一个很简单的文档转换器 - 使用组件 Spire.Office

    打造一个很简单的文档转换器 - 使用组件 Spire.Office [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6024827.html 序 之前,& ...

  4. 【转】 FineBI:自助式BI工具打造业务分析的“快与准”

    如今的企业经营方式,业务对于数据分析有极大的需求,但却苦于没有数据以及工具的有效支持,业务分析仍就依赖于IT报表制作.而IT方不断地按业务需求去调研.确认业务逻辑,然后取数做报表,其中还要忍受业务的需 ...

  5. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  6. 吐血大奉献,打造cnblogs最新最火辣的css3模板(IE9以下请勿入内) -- 第一版

    一直自己都想给自己的博客打造一个独一无二的皮肤,但是一直没有强劲的动力去完成这件事情.后来凭借着工作上面的需求(涉及到css3),就把自己的博客当成一个最好的试验场地.从而产生了你现在所看到的这个模板 ...

  7. [.Net] 手把手带你将自己打造的类库丢到 NuGet 上

    手把手带你将自己打造的类库丢到 NuGet 上 序 我们习惯了对项目右键点击“引用”,选择“管理NuGet 程序包”来下载第三方的类库,可曾想过有一天将自己的打造的类库放到 NuGet 上,让第三者下 ...

  8. 快速打造跨平台开发环境 vagrant + virtualbox + box

    工欲善其事必先利其器,开发环境 和 开发工具 就是 我们开发人员的剑,所以我们需要一个快并且好用的剑 刚开始做开发的时候的都是把开发环境 配置在 自己的电脑上,随着后面我们接触的东西越来越多,慢慢的电 ...

  9. 打造android偷懒神器———ListView的万能适配器

    如果你去做任何一个项目,我相信你都会跟我有一样的经历,最最普遍的就是列表显示ListView,当然,写N个自定义的适配器也是情理之中.虽说程序员本身就是搬砖,做这些枯燥无味的重复的事情也是理所当然,但 ...

随机推荐

  1. C# user32.dll

    #region User32.dll 函数 /// <summary> /// 该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文环境的句柄,以后可以在GDI函数中使用该句柄来在设备 ...

  2. mybatis 需要注意的点 MyBatis 插入空值时,需要指定JdbcType (201

    转自:https://blog.csdn.net/snakemoving/article/details/76052875 前天遇到一个问题 异常显示如下: 引用 Exception in threa ...

  3. 如何解决JSP页面显示乱码问题

    一.JSP页面显示乱码 下面的显示JSP页面(display.jsp)就出现乱码: <html> <head> <title>JSP的中文处理</title& ...

  4. rook issues

    ceph-volumeattacher: failed rbd single_major check, assuming it's unsupported: failed to check for r ...

  5. git的基础操作-入门

    本文是根据廖雪峰的git教程写的笔记:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0 ...

  6. Wrapper模式(Decorator模式)

    [Wrapper模式(Decorator模式)] 装饰者模式 Decorator模式(别名Wrapper):动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案. 意图: 动态地 ...

  7. Java核心技术-泛型程序设计

    使用泛型机制编写的代码要比那些杂乱地使用Object变量,然后再进行强制类型转换的代码具有更好的安全性和可读性. 泛型对于集合类尤其有用 1 为什么要使用泛型程序设计 泛型程序设计意味着编写的代码可以 ...

  8. IPMI设置与使用(远程控制服务器)

    如果服务器crash了或者就hang住了,我们不必要跑到机房去按电源键的,因为我们也想“运筹帷幄之中,决胜千里之外”嘛.我们可以用IPMI,它可以让我们远程用一条命令开启(关闭.重启)一台服务器,也可 ...

  9. spring定时任务执行两次的原因与解决方法

    spring定时任务,本地执行一次,放到服务器上后,每次执行时会执行两次,原因及解决办法. http://blog.csdn.net/yaobengen/article/details/7031266 ...

  10. cakephp获取最后一条sql语句

    .在app\config\core.php中设置Configure::write(); .页面上追加如下代码: $dbo = ConnectionManager::getDataSource('def ...