gor -- Golang 编写的静态博客引擎
jopen
10年前
gor是使用 Go 实现的类 Ruhoh 静态博客引擎(Ruhoh like),基本兼容 ruhoh 1.x 规范。相当于与 ruhoh 的官方实现( ruby 实现),有以下优点:
- 速度完胜 -- 编译 wendal.net 近200篇博客,仅需要1秒
- 安装简单 -- 得益于 golang 的特性,编译后仅一个可运行程序,无依赖
Installation 安装
To install:
go get -u github.com/wendal/gor go install github.com/wendal/gor/gor
在 Mac下使用 brew 的用户
如果是通过 brew 来安装go,并且没有设置$GOROOT跟$GOPATH的话,请使用如下命令(路径请更改为自己对应的 golang 的版本信息)
ln -s /usr/local/Cellar/go/1.0.3/bin/gor /usr/local/bin
或者你可以从 Googe Code 直接下载编译好的gor
Quick Start 快速入门
新建站点
gor new example.com # 执行完毕后, 会生成example.com文件夹,包含基本素材及演示文章
新建单篇博客
cd example.com gor post "goodday" [dir/to/img/files] # 即可生成 post/goodday.md文件,打开你的markdown编辑器即可编写
如果输入可选参数dir/to/img/files,gor 会从该目录拷贝图片文件到配置的目录,同时在goodday.md中自动插入对应的<img>标签。
基本配置
打开站点根目录下的site.yml文件
- 填入 title,作者等信息
- 填入邮箱等信息
打开站点根目录下的 config.yml 文件
- production_url:为你的网站地址,例如http://wendal.net最后面不需要加入/,生成rss.xml等文件时会用到
- summary_lines:首页的文章摘要的长度,按你喜欢的呗
- latest:首页显示多少文章
- imgs:自动插入<img>的相关配置
打开widgets目录, 可以看到基本的挂件,里面有config.yml配置文件
- analytics:暂时只支持google analytics,填入tracking_id
- comments:暂时只支持disqus,请填入short_name
- google_prettify:代码高亮,一般不修改
编译生成静态网页
gor compile # 瞬间完成,生成 compiled 文件夹,包含站点所有资源
本地预览
gor http # 打开你的浏览器,访问 http://127.0.0.1:8080
部署
你可以使用github pages等服务,或者放到你的自己的vps下,因为是纯静态文件,不需要php/mysql/java等环境的支持。