用pelican搭建完美博客
前面有文章介绍本站采用了Python
编写的Pelican
静态生成博客系统, 之所以没有使用当前很火的Jekyll
, 是因为它是Ruby
编写, 而我又对Ruby
没有啥兴趣, 所以还是选择了使用了我熟悉的Python编写的这套系统, 我用了一段时间,打算将使用经验分享出来
介绍
Pelican
是一套开源的使用Python编写的博客静态生成, 可以添加文章和和创建页面, 可以使用MarkDown
reStructuredText
和 AsiiDoc
的格式来抒写, 同时使用 Disqus
评论系统, 支持 RSS
和Atom
输出, 插件, 主题, 代码高亮等功能, 采用Jajin2
模板引擎, 可以很容易的更改模板
安装
可以从github
克隆最新的代码安装, 并且建议在virtualenv
下使用:
建立 virtualenv
virtualenv pelican # 创建 cd pelican sh bin/activate # 激活虚拟环境
上面建立了一个Python的虚拟环境(这个命令不是内置可以使用 easy_install virtualenv
安装)
从github克隆最新代码安装Pelican
git clone git://github.com/getpelican/pelican.git # 代码 cd pelican python setup.py install
上面步骤完成后就安装了Pelican
开始一个博客
mkdir /path/to/your/blog cd /path/to/your/blog pelican-quickstart
在回答一系列问题过后你的博客就建成的, 主要生成下列文件:
. |-- content # 所有文章放于此目录 |-- develop_server.sh # 用于开启测试服务器 |-- Makefile # 方便管理博客的Makefile |-- output # 静态生成文件 |-- pelicanconf.py # 配置文件 |-- publishconf.py # 配置文件
写一篇文章
在 content
目录新建一个 test.md
文件, 填入一下内容:
Title: 文章标题 Date: 2013-04-18 Category: 文章类别 Tag: 标签1, 标签2这里是内容
然后执行:
make html
用以生成html
然后执行
./develop_server.sh start
开启一个测试服务器, 这会在本地 8000 端口建立一个测试web服务器, 可以使用浏览器打开:http://localhost:8000
来访问这个测试服务器, 然后就可以欣赏到你的博客了
创建一个页面
这里以创建 About
页面为例
在content
目录创建pages
目录
mkdir content/pages
然后创建About.md
并填入下面内容
Title: About Me Date: 2013-04-18About me content
执行 make html
生成html, 然后打开 http://localhost:8000
查看效果
让Pelican支持评论
Pelican 使用Disqus
评论, 可以申请在Disqus上申请一个站点, 然后在pelicanconf.py
里添加或修改DISQUS_SITENAME
项:
DISQUS_SITENAME = u"linuxzen"
执行
make html
浏览器打开 http://localhost:8000
查看效果
更换主题
Pelican本身也提供了一些主题可供选择, 可以从github克隆下来
git clone git://github.com/getpelican/pelican-themes.git # 主题
然后在里面找到想要的主题, 然后拷到博客项目当前目录, 这里已neat
为例
cp -r /path/to/themes/from/github/neat .
然后在 pelicanconf.py
配置文件里添加或修改 THEME
项为 neat
THEME = "neat"
重新执行
make html
然后打开 http://localhost:8000
查看效果
使用插件
Pelican 一开始是将插件内置的, 但是新版本 Pelican将插件隔离了出来, 所以我们要到github上 克隆一份新的插件, 在博客目录执行
git clone git://github.com/getpelican/pelican-plugins.git # 插件
现在我们博客目录就新添了一个 pelican-plugins
目录, 我们已配置sitemap
插件为例, sitemap
插件可以生成 sitemap.xml
供搜索引擎使用
在pelicanconf.py
配置文件里加上如下项:
PLUGIN_PATH = u"pelican-plugins"PLUGINS = ["sitemap"]## 配置sitemap 插件 SITEMAP = {"format": "xml","priorities": {"articles": 0.7,"indexes": 0.5,"pages": 0.3,},"changefreqs": {"articles": "monthly","indexes": "daily","pages": "monthly",} }
然后再执行
make html
打开浏览器请求 http://localhost:8000/sitemap.xml
即可看到生成的 Sitemap 了
拷贝静态文件
如果我们定义静态的文件, 该如何将它在每次生成的时候拷贝到 output 目录呢, 我们以robots.txt
为例, 在我们的 content/extra 下面我们放了一个定义好的 robots.txt
文件, 在pelicanconf.py
更改或添加 FILES_TO_COPY
项:
FILES_TO_COPY = (("extra/robots.txt", "robots.txt"), )
这样在每次生成html的时候都会把 content/extra
下的 robots.txt
拷贝到 output
目录下
拷贝静态目录
如果是一个静目录怎么办? 我们可以在pelicanconf.py
里添加或修改 STATIC_PATHS
项, 比如我们有个img
目录用来放文章所使用的图片, 我们可以在pelicanconf.py
添加
STATIC_PATHS = [u"img"]
然后执行
make html
然后 Pelican 就会将 img
目录拷贝到 output/static/
下
部署
上面都弄完之后你就可以得到一个功能健全的博客系统, 接下来就是部署到服务器, 上传到服务器并结合nginx或者apache等web服务器部署这里就不在详述
参考
参考文章:http://www.uoota.com/blog/archives/27222
http://ioreq.com
如果还有其他问题请参考官方手册
转载于:https://www.cnblogs.com/imhurley/p/6137272.html
用pelican搭建完美博客相关推荐
- pelican搭建静态博客_Pelican入门:基于Python的静态网站生成器
pelican搭建静态博客 如果要创建自定义网站或博客,则有很多选择. 许多提供商将托管您的网站,并为您完成许多工作. (WordPress是一个非常受欢迎的选项.)但是,使用托管解决方案会失去一些灵 ...
- [Pelican] 使用Pelican搭建静态博客
为什么写博客 一方面是对自己平时工作和学习中收获的自我总结和积累,另一方面,借用知乎的一句话说就是"与世界分享你的知识". 为什么选择Plican 写博客有两种选择: 一种是博客社 ...
- 崇高文本_将崇高文本转化为完美博客工具的6种方法
崇高文本 Sublime Text is a popular code editor but, after spending a few months with it, I realised some ...
- 用Pelican+Github搭建个人博客网站
Title: 用Pelican+Github搭建个人博客网站 Date: 2017-06-4 19:13 Category: 技术博客 Modified: 2018-10-11 19:03 Tags: ...
- 使用pelican搭建一个Jupyter Notebook数据科学博客
前言:这里是我最终搭建的博客,可以先预览看一下效果,这里是 github 地址, 欢迎 fork and star ! 写博客是一个证明你的技能,进一步加深学习和积累受众的一个非常好的方式.已经有非常 ...
- 使用Pelican搭建博客系统
摘要 经过几天的折腾,用Pelican搭建的独立博客系统终于上线运行了.可以打开kamidox.com看一下效果图.由于选用了响应式网页设计的主题,所以在手机上的浏览效果也相当赞.本文介绍了Pelic ...
- Python搭建个人博客(pelican)-快速实践~
Python搭建个人博客(pelican)-快速实践~ 文章目录 Python搭建个人博客(pelican)-快速实践~ 一.安装 二.创建项目 三.创作一篇文章 四.生成网站 五.预览网站 强烈建议 ...
- Hexo+github搭建个人博客-博客发布篇
通过 Hexo+github搭建个人博客-环境搭建篇 以及 Hexo+github搭建个人博客-博客初始化篇 ,我们了解到了利用Hexo搭建个人博客需要的环境以及配置,下面这篇文章将会介绍如何把我们的 ...
- 阿里云+wordpress搭建个人博客网站【小白专用的图文教程】
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
最新文章
- 3.3 前向传播与反向传播-机器学习笔记-斯坦福吴恩达教授
- python中的偏函数
- python-带参数的装饰器
- Swift延迟加载的一种用途
- 白班夜班不是你想做就做,一切都得听安排
- 【渝粤教育】国家开放大学2018年春季 0047-21T计算机办公软件应用 参考试题
- 我国物联网发展如何跳出“窄巷”?
- c语言随机抽取小程序_c++ c语言编写抽学号小程序
- 【腾讯内部干货分享】分析Dalvik字节码进行减包优化
- win10修改计算机物理地址,Windows10系统修改物理地址的方法
- coq程序编写好用的IDE推荐
- 同城跑腿微信小程序制作步骤_分享下同城跑腿小程序的作用
- 通过云片网实现短信以及验证码的发送
- matlab元胞数组的创建和显示
- [Revit教程]斑马:分享一个用Revit自适应构件做安全疏散距离分析的方法#S007
- 全国计算机二级office选择题知识点,全国计算机二级考试MS office选择题知识点合集(通用)...
- 基于SVG的鼠标动态绘制矩形和动态放置图片
- 错误信息403-服务器拒绝执行该请求,营造良好氛围 掀起活动高潮
- 【AeroSim 六自由度仿真飞行模块】一、安装与demo运行问题
- 记录一下自己常用的数据库,以备不时之需