GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置

前言

此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客poem_of_sunshinefrantic1048,他们写得都很好,内容流程完善,但在具体实施过程中小白还是会遇到很多问题,因此本文结合现有的教程,再进一步指出整个操作过程中所可能遇到的问题,也为自己留个纪念。

本文架构

本文将从以下几个方面进行描述:

一、安装环境

1.1 Windows安装环境

本文基于Windows7 32位操作系统

1.2 安装软件系列

在整个安装配置过程中,所需要的软件清单如下所示,点击相应软件可直接从网站下载。

1.3 安装步骤

1.3.1 Python安装

进官网下载python2.7 Windows安装版本,我用的是python2.7.6,msi类型,直接点击安装文件进行安装,安装路径自己选,安装好之后,将安装路径加入到系统环境变量PATH中,例如我安装的路径如下:

C:\Program Files\Python27\

1.3.2 setuptools安装

安装此插件的主要目的当然就是为了大名鼎鼎的easy_install了撒,它与pip齐名,呆会也要装起。在我用python setup.py install过程中,一开始出现了编码错误问题,python的默认编码为ascii,有网上资料说改Python的默认编码为utf-8就可以,即在出现编码错误的文件中执行如下语句:

  1. import sys
  2. reload(sys)
  3. sys.setdefaultencoding("utf8")

但这方法在我的系统中无效,最后解决方法是下载.exe类型的setuptools进行安装,下载地址如上软件清单链接,此过程中安装很顺利。安装好后在python安装目录下的Scripts文件夹会有一些关于easy_install的文件,所以要将此路径加到系统环境变量PATH,我的路径如下:

  1. {python install path}/scripts/

1.3.3 Pip安装

pip我是直接用easy_install安装的,安装命令: easy_install pip 。安装好之后也会在Scripts文件夹生成一些Pip的可执行文件。

1.3.4 Git Bash安装

Git 客户端的安装,直接选择默认安装就行了,Git版本不能太低。

Pelican是用PIP安装的,一开始安装时也出现一些错误,就是PIP默认使用国外镜像,在获取安装源过程中会出现握手超时现象,即镜像不稳定,后来查相关资料找到国内清华大学的镜像安装源,其网址如下:

  1. http://e.pypi.python.org/simple/

在Pip安装时指定此路径即可,速度搜搜的,很爽很稳定,指定格式如下:

  1. pip install pelican -i http://e.pypi.python.org/simple/

安装其它相关python包时也可以这样安装,速度有保证。

1.3.5 Markdownpad2安装

此软件是Window下比较好的Markdown编辑器,不过是收费的,为了满足大家的使用需求,对于我等穷屌丝只能找些破解软件用用,所以在网上找了相关的破解文件,请点击此下载。破解方法已经在下载的文件包中有所说明,这里也提一下,分两步:

首先,将user.config放在如下格式路径中:

  1. %LOCALAPPDATA%\MarkdownPad2\MarkdownPad2.exe_Url_bakzl5xvna20knbzwksj2a0nyzlicvaa\2.3.2.34663\
  2. e.g: c:\users\{username}\AppData\Local\MarkdownPad2.exe_Url_2o2l2qlnbxt2ueyxs3lr3txdmzazbghc\2.3.2.34664\

其次,运行下Patch.exe注册机程序,Patch下安装主目录中的Markdownpad2程序即可。注:运行此patch之前务必不要先启动Markdownpad2程序

最后,启动Markdownpad2即可享受专业版的服务了。

1.3.6 Make 安装

下载完Make后,直接放到一个文件夹,将此路径添加到系统环境变量PATH中,重启或注销电脑后就可以进行make操作了

二、Pelican配置

配置Pelican,首先需要新建一个BLOG目录,然后执行pelican-quickstart,具体步骤如下:

  1. mkdir blog
  2. cd blog
  3. pelican-quickstart

在执行完pelican-quickstart后,在blog目录会产生如下目录结构的文件:

  1. blog/
  2. |--content #存储所写的blog文件目录,
  3. | └──(blog pages) #博客文件,如*.md后缀的文件
  4. |--output #执行make publish之后,会将博客文件转换成相应的html文件及相应的存储目录
  5. | └──.git #执行git init之后,产生的远程仓库目录
  6. | └──author #作者目录,存放pelicanconf.py中指定的Author文件
  7. | └──category #分类目录,默认目录文件为misc,在编辑器中指定
  8. | └──feeds #目录,pelicanconf.py中FEED_RSS指定的XML文件
  9. | └──pages #目录,pelicanconf.py中ARTICLE_URL指定格式分类文件
  10. | └──tag #目录,存放编辑器开头所指定的Tag
  11. | └──theme #目录,存放博客模板文件
  12. | └──archives.html,authors.html,categories.html,index.html, tags.html
  13. |——pelican-plugins #目录,pelican插件
  14. |——develop_server.sh #pelican简易web服务器操作文件
  15. |——fabfile.py # 与make类似,可用fab publish, fab server命令
  16. |——Makefile #make 命令文件
  17. |——pelicanconf.py #主要的pelican配置文件
  18. |——publishconf.py #发布配置文件,可有可无

2.1 Git远程仓库配置

要将blog部署到git上,必须在本地建立一个git仓库,同时必须确保在github server端有远程仓库,名字一般为username.github.io。本地操作命令如下:

  1. cd output
  2. git init #产生一个.git文件夹
  3. git remote add origin https://github.com/username.github.io.git#将远程仓库配置到本地

2.2 Pelican常规配置

对于Pelican常规配置,主要配置选项如下,具体说明可参考getpelican网站的命令说明。

  1. Author=u""
  2. SITENAME=u""
  3. SITEURL=u""
  4. GITHUB_URL=u""
  5. ARCHIVES_URL=u""
  6. ARTICLE_URL=u""
  7. ARTICLE_SAVE_AS=u""
  8.  
  9. DEFAULT_LANG=u"zh"#默认语言设置
  10. DATE_FORMAT={"zh":("zh_CN","%Y-%m-%d,%a"),}#日期格式设置,可按自己喜好设定
  11. DEFAULT_PAGINATION=5 #默认的分页数量
  12. TIME_ZONE = u"Asia/Shanghai"#时区设置

2.3 Pelican进阶配置

一些进阶设置可以帮助更好的管理blog,比如用到Google的Analytical,第三方的Disqus评论系统,还有Feed、插件、Blogroll及Social设置,如果还想要导航菜单项,还可设置MENUITEMS等,下面一一介绍:

2.3.1 Feed设置

Feed的设置方便博客的订阅,在pelicanconf.py中需添加如下命令:

  1. FEED_RSS = u"feeds/all.rss.xml"
  2. CATEGORY_FEED_RSS=u"feeds/%s.rss.xml"#为分类添加Feed

2.3.2 Plugin设置

可以根据需要添加相应的插件,插件可从github克隆,克隆命令如下:

  1. git clone git://github.com/getpelican/pelican-plugins.git

比如要设置Sitemap插件,然后在pelicanconf.py中设置如下:

  1. PLUGIN_PATH=u"pelican-plugins"
  2. PLUGINS = ["sitemap"]
  3. SITEMAP = {
  4. "format":"xml",
  5. "priorities":{
  6. "articles":0.7,
  7. "indexes":0.5,
  8. "pages":0.3,
  9. },
  10. "changefreqs":{
  11. "articles":"monthly",
  12. "indexes":"daily",
  13. "pages":"monthly",
  14. }
  15. }

2.3.3 Theme设置

  1. git clone https://github.com/getpelican/pelican-themes.git
  2. cd pelican-themes
  3. pelican-themes -i bootstrap2 #可换成你自己的theme

2.3.4 Analytical设置

需要到Google的Analytical申请一个账号,记录下追踪ID,然后在pelicanconf.py中添加如下命令:

  1. GOOGLE_ANALYTICS = u"UA-********-*" #ID以UA开头

2.3.5 Disqus

第三方评论系统有很多,这里选用很流行的Disqus作为第三方评论系统,同样需要到Disqus官网申请账号,然后填写两处:

  1. Site name: {your git account name}.github.io
  2. Admin URL: {Shortname}.disqus.com

记下Shortname,然后在pelicanconf.py中添加如下命令行:

  1. DISQUS_SITENAME = u"{Shortname}" #填入你的Shortname

2.3.6 独立域名设置

如果你有独立域名,则可用自己的域名去访问github博客,在godaddy上可用支付宝购买,同时我们用dnspod进行动态域名解析,步骤如下:

步骤1:修改godaddy中的NameServers的两个地址为dnspod的DNS地址:

  1. f1g1ns1.dnspod.net
  2. f1g1ns2.dnspod.net

步骤2:在Dnspod中添加一条A记录,指向github URL

  1. 207.97.227.245

步骤3:在Pelican主目录,即上面创建的blog/output目录,添加CNAME文件,在文件中添加你的独立域名

2.3.7 Menu Item设置

在你的博客中,可设置相应的菜单项,菜单项是通过MENUITEMS设置的,具体如下所示:

  1. MENUITEMS = (("ITEM1","http://github.com"),
  2. ("ITEM2",URL),
  3. ......)

2.3.8 BlogRoll和Social设置

设置一些Blog链接,通过设置LINKS实现,具体如下:

  1. LINKS = (("Github", "https://github.com"),
  2. ("Cnblogs", URL),)
  3. SOCIAL = (("博客园", "http://www.cnblogs.com"),
  4. ("Github','http://github.com"),)

三、Markdown博客编写

利用Markdownpad编辑器可方便进行Markdown格式的博客编写,编写格式如下所示:

  1. Date: 2013-11-27
  2. Title: pelican install
  3. Tags: pelican
  4. Category: Pelican
  5. Slug: pelican-install
  6. blog正文内容】

在编好之后,执行如下命令:

  1. make publish # 将.md发布到output目录
  2. make server # 在本机查看预览博客,localhost:8000

如果要一次性部署到github,可以配置Makefile文件中的github,要修改两处,一处是将$(PUBLISHDIR)替换成$(CONFFILE),另一处增加一些git命令,具体如下所示:

  1. publish:
  2. $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
  3. github: publish
  4. cd $(OUTPUTDIR) && git add . ;
  5. cd $(OUTPUTDIR) && git pull origin master;
  6. cd $(OUTPUTDIR) && git commit -m 'commit';
  7. cd $(OUTPUTDIR) && git push origin master

最后,只要进行Makefile的同级目录,执行make github即可完成一次性部署。注:在此过程中,可能要输入github username 和 password,要避免重复输入,请查看我的另一篇博客

四、安装配置出错问题集绵

在安装过程中,出现一些错误,在此统一写出来,以留个纪念

4.1 Setuptools问题

此问题在上述有所提到,就是用python setup.py install安装时提示编码出错,最后重新下载.exe文件安装解决此问题,编码本身暂时还未找到有效解决方法。

4.2 Pelican握手超时问题

此问题上述也有所提及,就是国外镜像不稳定导致,换成清华镜像后就好了

4.3 Git pull & push问题

在Git pull和Git push过程中出现如下图所示问题:

即以https进行git操作时,会出现libcurl库不支持https的错误,此错误主要是由于现有libcurl库不支持ssl所致,解决方法是下载支持ssl的libcurl,然后将相应的.dll文件拷贝到c:\windows\system32中即可。

4.4 Makefile问题

此问题主要是由于自己粗心大意造成,但也贴出来以免大家也犯同样的错误,其实也很简单,就是忘记将publish项的$(PUBLISHDIR)替换成$(CONFFILE)了,后果就是.git文件夹被破坏。

4.5 Code block 红框问题

在提交blog时,markdown语法中的code块对中文出现红框问题,主要是因为因为Pelican是使用pygment处理代码高亮的,而pygment的高亮颜色定义就在当前使用的主题目录中的pygment.css这个文件里,要修改代码高亮的配色就要通过修改这个文件来实现。现在打开它,可以看到里面是对代码的各种类型的内容的风格定义,其中有一行如下:

  1. .highlight .err { border: 1px solid #FF0000 } / Error /

根据内容可以看出这是规定书写错误的代码的文本样式,可是平时代码中有的字符也会被识别成错误的代码,所以就造成了代码块中时不时出现恼人的红框的问题,原因清楚了,现在要解决它就很容易了,直接删掉那行中的border样式就可以了。如果你跟我一样完全不需要给这类代码规定特殊样式的话,直接删掉那行即可。

五、总结

写了几个小时,终于把这篇博文写完了,主要是对markdown语法还不了解,边学边写,好得完成了,还有些部分是对pelican主页进行布置,这块自己也没有很多经验,以后会逐步深入,希望此篇blog能对初学者有所帮助。

备注:搭建好的博客如链接所示: www.zendwind.com

GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置的更多相关文章

  1. Jira7.10.1在Windows环境下的安装和配置

    jira安装的环境准备   1.   jira7.10的运行是依赖java环境的,也就是说需要安装jdk并且要是1.8以上版本: Java -version   2.  还需要为jira创建对应的数据 ...

  2. Windows环境下QWT安装及配置

    ** 1.QWT下载路径 **:https://sourceforge.net/projects/qwt/ 主要下载这三个文件:qwt-6.1.2.zip.qwt-6.1.2.pdf,qwt-6.1. ...

  3. 4.windows环境下如何安装memcached教程(转载+自己整理)

     Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached.百度经验:jingyan. ...

  4. 01.1 Windows环境下JDK安装与环境变量配置详细的图文教程

    01.1 Windows环境下JDK安装与环境变量配置详细的图文教程 本节内容:JDK安装与环境变量配置 以下是详细步骤 一.准备工具: 1.JDK JDK 可以到官网下载 http://www.or ...

  5. windows环境下如何安装memcached教程

    Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached. 工具/原料   memcach ...

  6. Github相册博客搭建

    前一段时间我看见一个问答,大概意思就是程序员都是怎么用自己的专业技能逗女朋友或表白的. 看了很多,有写定时关机脚本恶搞的,也有简单写个html展示的,其中最著名的就是几年前有个人写了个网页记录他们在一 ...

  7. Hexo+Github个人博客搭建 | 实战经验分享

    概述 第一次尝试搭建属于自己的博客,并且成功了,非常开心. 很久之前就想搭建一个博客,可是也一直没有行动,最近在逛B站的时候发现一个up主(CodeSheep)的一个视频 <手把手教你从0开始搭 ...

  8. [原创]python MySQLdb在windows环境下的安装、出错问题以及解决办法

    版权声明:本文为博主原创文章,未经博主允许不得转载. 问题:windows下安装MySQLdb的方法 解析:python没有php那种集成环境,比如wamp那种集成软件直接把所有需要的东西全部一次性搭 ...

  9. Windows环境下的安装gcc

    Windows具有良好的界面和丰富的工具,所以目前linux开发的流程是,windows下完成编码工作,linux上实现编译工作. 为了提高工作效率,有必要在windows环境下搭建一套gcc,gdb ...

随机推荐

  1. angularJS前端分页插件

    首先在项目中引入 分页插件的 js 和 css: 在html页面引入 相关js 和 css: 在控制器中引入分页插件中定义的 module[可以打开pagination.js查看,可以看到 其实,在插 ...

  2. Linux环境下用Weblogic发布项目【一】 -- 安装Weblogic

     一.Weblogic安装系统环境: 1.前提条件: a.在笔记本[Windows7]上安装远程连接Linux软件:F-Secure SSH File Transfer Trial[简写为:FSSH] ...

  3. ACE反应器(Reactor)模式(2)

    转载于:http://www.cnblogs.com/TianFang/archive/2006/12/18/595808.html 在Socket编程中,常见的事件就是"读就绪" ...

  4. 如何在Linux上安装QQ

    我一直无法解决Ubuntu QQ问题,而最近我重装ubuntu之后在网络上找到与QQ相关的内容,网上有大神开发出了新版的wineQQ,解决了我们对QQ的需求.经过尝试,完成了QQ安装 如图  安装的是 ...

  5. Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题解

    Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题目链接:https://codeforces.com/contest/1130 ...

  6. syslog大小限制

    位置 /etc/logrotate.d/rsyslog 相关配置信息察看man logrotate size k/M/G /var/log/syslog { rotate daily missingo ...

  7. bzoj 1111 [POI2007]四进制的天平Wag 数位Dp

    1111: [POI2007]四进制的天平Wag Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 302  Solved: 201[Submit][St ...

  8. CMDB资产管理系统开发【day26】:CMDB上节回顾

    一.上节知识点回顾 服务器设计了一个表结构 开发了一个客户端 二.后台创建缓存区表 客户端连接服务器,在服务器的下面看报错信息 因为URL都没有写,所以我找不到呀 1.在MadKing\url.py ...

  9. sublime 常用插件 感觉比较全了 够用了

    插件介绍 Package Control 功能:安装包管理 简介:sublime插件控制台,提供添加.删除.禁用.查找插件等功能 使用:https://sublime.wbond.net/instal ...

  10. idea中设置springboot热部署

    在idea中设置springboot热部署,项目修改的时候不用手动重启应用 1,pom中添加依赖 <dependency> <groupId>org.springframewo ...