如何使用Gitblog和Markdown建自己的博客


Posted in PHP onJuly 31, 2015

下面给大家分享下如何使用Gitblog和Markdown建自己的博客,如何大家拥有服务器或者云平台提供的云主机,我推荐大家使用Linux+ Nginx 来运行Gitblog,如果大家目前只有Apache环境也可以。

域名解析

将你准备好的域名解析到你的主机IP,推荐使用 dnspod 来管理和监控你的域名,具体的使用方法参考dnspod官方说明文档,非常简单。

Nginx+PHP运行环境

首先安装好你的Nginx和PHP环境,PHP版本要求5.3以上。如果你没有安装过,可Google搜索相关教程,也可以参照Nginx和PHP官方的文档。这是第一步,有一个正常的Nginx + PHP的运行环境。

配置Nginx

nginx可参考如下配置:

server {
 listen    80;
 server_name jockchou.gitblog.cn;
 root /data/vhosts/jockchou.gitblog.cn;
 index index.html index.htm index.php;
 location ~ \.(jpg|png|gif|js|css|swf|flv|ico)$ {
   expires 12h;
 }
 location / {
  if (!-e $request_filename) {
     rewrite ^(.*)$ /index.php?$1 last ;
     break;
  }
 }
 location ~* ^/(doc|logs|app|sys)/ {
  return 403;
 }
 location ~ .*\.(php|php5)?$
 {
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_pass  127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
 }
}

将以上配置中的server_name和root改成你自己的,fastcgi_pass配成你的CGI进程端口。

权限配置

由于Gitblog的缓存机制需要写 app/cache 目录,必要时请查看并修改这个目录的权限,以确保你的PHP拥有写这个目录的权限。通常你只需要将此目录的所属者和组修改成CGI的运行账户。

运行

以上配置好以后,启动你的Nginx和CGI服务,上传Gitblog源代码到网站目录,通过浏览器访问解析到本机的域名观察页面效果。如果页面没有正常显示,通过错误码来检查你的CGI和Nginx配置。

Gitblog介绍

一. 简介

Gitblog是一个简单易用的Markdown博客系统,它不需要数据库,没有管理后台功能,更新博客只需要添加你写好的Markdown文件即可。它摆脱了在线编辑器排版困难,无法实时预览的缺点,一切都交给Markdown来完成,一篇博客就是一个Markdown文件。同时也支持评论,代码高亮,数学公式,页面PV统计等常用功能。Gitblog提供了不同的主题样式,你可以根据自己的喜好配置,如果你想自己制作博客主题,也是非常容易的。Gitblog还支持整站静态导出,你完全可以导出整站静态网页部署到Github Pages。

二. 功能特点

使用Markdown
评论框
代码高亮
PV统计
Latex数学公式
自制主题
响应式
全站静态导出
良好的SEO
三. GitBlog优势

无需数据库,系统更轻量,移植更方便
使用Markdown编写,摆脱后台编辑排版困难,无法实时预览的缺点
可全站静态导出
配置灵活,可自由开关某些功能
多主题支持,可自制主题
博客,分类,标签,归档
四. 环境要求

PHP 5.2.4+

五. 安装步骤

下载Gitblog源代码
解压上传到你的PHP网站根目录
打开浏览器,访问网站首页
上传Markdown文件到 posts 文件夹

以上内容就是如何使用Gitblog和Markdown建自己的博客的全部内容,希望大家能够喜欢。

PHP 相关文章推荐
PHP脚本数据库功能详解(下)
Oct 09 PHP
第四节--构造函数和析构函数
Nov 16 PHP
PHP中for循环语句的几种变型
Mar 16 PHP
php下批量挂马和批量清马代码
Feb 27 PHP
php中将网址转换为超链接的函数
Sep 02 PHP
php计算一个文件大小的方法
Mar 30 PHP
PHP机器学习库php-ml的简单测试和使用方法
Jul 14 PHP
thinkphp中的多表关联查询的实例详解
Oct 12 PHP
PHP的PDO预处理语句与存储过程
Jan 27 PHP
php文件后缀不强制为.php的实操方法
Sep 18 PHP
laravel 使用事件系统统计浏览量的实现
Oct 16 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
Feb 21 PHP
php自定义类fsocket模拟post或get请求的方法
Jul 31 #PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
Jul 31 #PHP
PHP中filter函数校验数据的方法详解
Jul 31 #PHP
PHP代码实现爬虫记录――超管用
Jul 31 #PHP
PHP 前加at符合@的作用解析
Jul 31 #PHP
PHP查看当前变量类型的方法
Jul 31 #PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 #PHP
You might like
一个改进的UBB类
2006/10/09 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
php多个文件及图片上传实例详解
2014/11/10 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
实例讲解PHP表单处理
2019/02/15 PHP
Yii2.0框架模型多表关联查询示例
2019/07/18 PHP
jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)
2010/10/20 Javascript
javascript判断非数字的简单例子
2013/07/18 Javascript
js判断两个日期是否相等的方法
2013/09/10 Javascript
JS截取字符串常用方法整理及使用示例
2013/10/18 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
jquery $.trim()去除字符串空格的实现方法【附图例】
2016/03/30 Javascript
js和jq使用submit方法无法提交表单的快速解决方法
2016/05/17 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
JS实现可编辑的后台管理菜单功能【附demo源码下载】
2016/09/13 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
Vue发布项目实例讲解
2019/07/17 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
2020/11/12 Javascript
python将html转成PDF的实现代码(包含中文)
2013/03/04 Python
python 布尔操作实现代码
2013/03/23 Python
Python列表切片操作实例总结
2019/02/19 Python
Python选择网卡发包及接收数据包
2019/04/04 Python
Python的pygame安装教程详解
2020/02/10 Python
css3圆角边框和边框阴影示例
2014/05/05 HTML / CSS
床上用品全球在线购物:BeddingInn
2016/12/18 全球购物
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
若干个Java基础面试题
2015/05/19 面试题
解除合同协议书
2014/04/17 职场文书
机电专业毕业生求职信
2014/07/01 职场文书
自我评价优缺点范文
2015/03/11 职场文书
海底两万里读书笔记
2015/06/26 职场文书
我去timi了,一起去timi是什么意思?
2022/04/13 杂记