使用CHCA搭建静态博客
chca是一个使用golang开发的静态博客生成器,简单、方便、快捷,抛弃每次都需要使用命令编译文件,采用文件监听方式编译,作者只需把markdown文件放到配置中的markdown文件夹下就能自动生成html了。
chca源码地址: https://github.com/num5/chca
如果你是个不懂程序的小白,chca更加适合你,只需要修改少量配置就可以搭建一个属于自己的博客了。最重要的是,如果你没有自己的服务器,可以将其搭建在github pages上,完全免费的哦。
关于为什么要开博客?可以看看这篇文章《为什么你要写博客?》
关于如何在github上搭建博客,网上有很多教程,就不在赘述了。
必要步骤
下载chca
Windows:http://golune.qiniudn.com/chca-win64.tar.gz
Linux:http://golune.qiniudn.com/chca-linux64.tar.gz
Mac:http://golune.qiniudn.com/chca-darwin64.tar.gz
下载平台对应的程序,新建一个文件夹来存放chca所有的文件,并将chca解压到本文件夹下
如果打算将博客搭建在github上,还需要下载git和申请一个github账号
go 源码安装
go get -v github.com/num5/chca
下载chca模板
下载地址:http://golune.qiniudn.com/default-theme.tar.gz
关于模板语法说明,请参照:chca模板语法说明
使用步骤
chca只需要两步就可以创建一个带有独立web服务器的博客
第一步:初始化
打开命令终端,出入命令:
chca init
这一步会创建
markdown
文件夹和config.yml
文件,markdown
文件夹用于存放博客的源markdown文件,config.yml
是配置文件
config.yml
配置内容如下:
# config.yml
# 站点信息
title: 我的网站
subtitle: 网站标题
description: mate-description
keywords: mate-keywords
summary_line: 10 // 首页文章行数
home_art_num: 30 // 首页文章数量
# 文件夹相关
theme: theme/blog //网站模板
markdown: markdown //博客markdown文件存放文件夹
html: /data/www/html //博客html文件存放文件夹
storage: storage //数据存放文件夹,暂时未用到
# 作者信息
author: your name
avatar: /assets/avatar.png //头像连接,一般放到assets或者avatar文件夹里
github: https://github.com/num5 //github主页
weibo: http://weibo.com/golune //微博主页
mail: 378999587@qq.com //email 地址
zhihu: https://www.zhihu.com/people/golune //知乎主页
# 监听信息配置
paths: // 监听文件夹
- markdown
exts: // 监听后缀名
- md
# 上传信息
upload_theme: theme/upload // 上传模版地址
# 自定义标题,可不配置,使用chca设置好的标题
home_title: //主页标题
archive_title: //文章归档标题
tag_title: //标签导航页面标题
cate_title: //分类导航页面标题
about_title: //简历页面标题
article_title: //文章标题标头
根据自己需求修改配置文件
初始化以后需要在config.yml文件同目录下创建theme文件夹用于存放模板文件
第二步:运行chca
chca run [port]
打开chca服务,这一步自动打开监听器和内置webserver,默认webserver端口9900,端口可自定义,浏览器输入 http://localhost:9900 就能访问博客了。
监听器监听markdown
文件夹下的以 .md
为后缀的文件,可配置(参照上一步配置中监听信息配置
)。当markdown文件夹下的md文件有变动时就会触发编译命令,自动将自动编译markdown文件,生成静态页面。
其他命令
新建 markdown 文件
chca new filename
markdown文件需要以 ---
开头进行说明:
---
date: 2017-01-01
title: 我的第一篇博客
categories:
- 技术
tags:
- golang
- chca
---
建议使用
chca new
命令创建markdown文件
about.md
文件是存放作者简历的文件,存放在markdown文件夹,另外readme.md和about.md不会被文章解析器解析
生成静态页面
chca complate (或chca c)
这条命令用于编译markdown文件生成静态html页面
开启文件监听器
chca watch (或者chca w)
开启文件监听器,监听文件夹和文件后缀名在config.yml里配置
打开内部服务器
chca http [port]
打开内部服务器,端口可选,默认监听端口9900
Markdown语法参考链接: Markdown 语法说明 (简体中文版)
使用CHCA搭建静态博客的更多相关文章
- 【一】Ubuntu14.04+Jekyll+Github Pages搭建静态博客
本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...
- windows上使用mkdocs搭建静态博客
windows上使用mkdocs搭建静态博客 之前尝试过用HEXO搭建静态博客,最近发现有个叫mkdocs的开源项目也是搭建静态博客的好选择,而且它支持markdown格式,下面简要介绍一下mkdoc ...
- 使用github和hexo搭建静态博客
获得更多资料欢迎进入我的网站或者 csdn或者博客园 终于写这篇文章了,这是我使用github和hexo搭建博客的一些心得,希望能给大家一点帮助.少走点弯路.刚接触github,只是用来存项目的版本, ...
- 在GitHub上使用Hexo搭建静态博客
搭建静态博客须要一个前提是电脑上有安装git而且有github帐号,这个不懂能够看廖雪峰先生的git教程 1.下载nodejs.在官网上能够下载 2.使用git进入你新建的一个目录,输入命令 npm ...
- Hexo搭建静态博客踩坑日记(二)
前言 Hexo搭建静态博客踩坑日记(一), 我们说到利用Hexo快速搭建静态博客. 这节我们就来说一下主题的问题与主题的基本修改操作. 起步 chrome github hexo git node.j ...
- Hexo搭建静态博客踩坑日记(一)
前言 博客折腾一次就好, 找一个适合自己的博客平台, 专注于内容进行提升. 方式一: 自己买服务器, 域名, 写前端, 后端(前后分离最折腾, 不分离还好一点)... 方式二: 利用Hexo, Hug ...
- hexo搭建静态博客
1. 环境环境 1.1 安装Git 请参考[1] 1.2 安装node.js 下载:http://nodejs.org/download/ 可以下载 node-v0.10.33-x64.msi 安装时 ...
- Pelican搭建静态博客
前言 一直以来都希望拥有属于自己的个人博客,随性发点信息,写点技术感想,记录自己的生活,重要的是不受广告的影响.不被河蟹.不会担心有一天被莫名其妙地消失. 之前看过一篇文章:"像黑客一样写博 ...
- Hexo快速搭建静态博客并实现远程VPS自动部署
这篇文章将如何搭建hexo,以及如何通过git webhooks实现远程vps的自动部署 这篇文件适合的条件: 简单的用于个人博客.公司博客展示,hexo的定位是静态博客,要实现动态服务器的功能并不适 ...
随机推荐
- javaScript操作DOM对象(看三遍,敲三遍,写三遍! 不会你找我)!!
DOM是Document Object Model的缩写,即文档对象模型,是基于文档编程的一套API 使用javaScript操作DOM对象通常分为三类:1.DOM CORE 2.HTM ...
- 石头剪刀布 R语言统计分析
关于石头剪刀布,做出了详细的分析,具体ppt见地址 http://files.cnblogs.com/files/GMGHZ971322/R%E8%AF%AD%E8%A8%80.pptx 16级电商三 ...
- 数独小算法,测试通过(Java)
class SudokuMatrix { private int[][] matrix = new int[][] { {0, 5, 0, 6, 0, 1, 0, 0, 0}, {0, 0, 7, 0 ...
- js动态参数作为Object的属性取值
js动态参数作为Object的属性取值var myObj = {"a":1,"b":2};var a = 'a';myObj[a] 就可以获取到 属性a的值了
- 验证表格多行某一input是否为空
function checkTableKeyWordVal(tableId){ var result = true; $("#"+tableId+" tbody tr&q ...
- 基于Dubbo的分布式事务框架(LCN)
原文地址:http://原文地址:https://github.com/1991wangliang/transaction 基于Dubbo的分布式事务框架(LCN) 该框架依赖Redis/dubbo/ ...
- 导出CSV表格数据
<?php class Csv{ //导出csv文件 public function put_csv($list,$title){ $file_name="CSV".date ...
- js返回格式化的日期(年-月-日)
var d = new Date(); var str = d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate ...
- 查看表结构命令(mysql和oracle)
MySQL查看表结构SQL语句 = mysql查看表结构命令,如下: desc 表名; show columns from 表名; describe 表名; show create table 表名; ...
- Vue和Bootstrap的整合之路
我是一个刚刚接触前端开发的新手,所以有必要记录如何将Bootstrap和Vue进行整合. 如果你是老手,请直接绕道而过.作为一个新手,里面的步骤,过程或者专业术语未必正确,如果你发现哪里错误了,请发邮 ...