利用Octopress在github pages上搭建个人博客
利用Octopress在github pages上搭建个人博客
SEP 29TH, 2013
在GitHub Pages上用Octopress搭建博客,需要安装ruby环境、git环境等。本人在Fedora下成功搭建Octopress,这里把主要步骤和遇到的问题做一个记录。
在搭建的过程中发现yum安装的ruby与rake在管理octopress博客的时候会引起冲突,要使用rvm的方式安装ruby和rake;另外rvm一般用curl一段脚本来安装的话,网址有所变化,原来的教程中的网址要“去掉一个点”。
1.安装rvm
curl https://rawgithub.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable
网上很多教程用raw.github这个站点,但目前需要使用去除”.“的网址
2.将rvm命令添加到系统path中
echo ‘[[ -s “$HOME/.rvm/scripts/rvm” ]] && . “$HOME/.rvm/scripts/rvm” # Load RVM function’ >> ~/.bash_profile
source ~/.bash_profile
如果不做这一步,第3步的”rvm use 1.9.3”将不起作用
3.安装ruby1.9.3
rvm install 1.9.3 或者用2.0也可以
rvm use 1.9.3 或者用2.0也可以
这是下载ruby和rubygem源代码后本地自动编译安装.ruby和rubygem的版本要对应,这里会自动解决。
此时,可以查看ruby版本:ruby —version 我在shell下看到的是:ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux]
4.确保你装了git
用git —version查看版本
如果没有安装git,那就sudo yum install git-core
5.下载octopress
不要认为是网页上的“下载”,这里是用git的方式:
cd ~/workspace/blog
git clone git://github.com/imathis/octopress.git octopress
如果下载速度超慢请尝试修改hosts
6.安装bundle
cd octopress
gem install bundler
bundle install
这里很奇怪,先前bundle的时候一直报错,换成ruby.taobao.org还是报错,但这次没有修改Gemfile竟然下载安装无阻。
7.安装主题
rake install [‘theme-name’]
如果只是rake install表示安装默认主题(位于octopress/.theme)
这里如果遭遇rake install aborted错误,说rake版本不正确,因为rvm帮我们下载了0.9的版本,但是如果用yum install的话装的是10.x的版本,需要先yum remove rake。。感觉ruby的包管理机制真烦。
8.后续操作
生成模板:
rake generate
本地预览:
rake preview
可以通过127.0.0.1的4000端口查看
添加新文章
rake new_post[“文章标题”] //可以直接输入中文,Octopress 自动将汉字转换成拼音url
例如:rake new_post[“hello”]
会在source/_post/生成hello.markdown的文件
用文本编辑器打开后编辑即可。
添加新页面
rake new_page[“about”]
其他的编辑项
blog的配置信息修改: _config.ym
9.部署到github
需要先在github上建立一个repo,名字格式为username.github.io
官方主页的说明https://help.github.com/articles/user-organization-and-project-pages
然后是rake setup_github_pages
会询问你的repo的地址,填写你刚刚建立的repo的全称。
如果使用git@的形式,需要github的ssh设定过,否则会报错:
ssh-keygen
文件名取为/home/username/.ssh/github
然后就生成了key,复制/home/username/.ssh/github.pub中的内容,粘贴到github上account setting中的ssh key里面就ok了。
然后是部署:
rake deploy
如果github上比本地版本高则部署会失败,可以修改Rakefile第264行,“#”前添加“+”即可
ok,查看一下,比如我的:zchrissirhcz.github.com
可以看到octopress已经在了!
10.域名绑定
官方的帮助:https://help.github.com/articles/setting-up-a-custom-domain-with-pages 比如在godaddy买了example.com域名,然后把A记录改为 204.232.175.78(git page) 然后在本地octopress/source目录下新建CNAME文件,填写example.com
据说国外DNS容易被墙,索性换成DNSPOD好了
总结:
新建文章:rake new_page[‘文章名’]
增删改查:在octopress/source/_posts中进行
生成:rake generate 预览:rake preview 部署:rake deploy
参考:
http://beyondvincent.com/blog/2013/08/03/108-creating-a-github-blog-using-octopress/ http://easypi.github.io/blog/2013/01/05/using-octopress-to-setup-blog-on-github/ http://ginsmile.github.io/blog/2013/08/29/octopressbo-ke-ji-qiao/#.UkfO2x0W1q8http://beiyuu.com/github-pages/
利用Octopress在github pages上搭建个人博客的更多相关文章
- 使用jekyll在GitHub Pages上搭建个人博客【转】
网上有不少资源,但大多是“授人以鱼”,文中一步一步的告诉你怎么做,却没有解释为什么,以及他是如何知道的.他们默认着你知道种种专业名词的含义,默认着你掌握着特定技能.你折腾半天,查资料,看教程,一步步下 ...
- 让搭建在 Github Pages 上的 Hexo 博客可以被 Google 搜索到
title: 让搭建在Github Pages上的Hexo博客可以被Google搜索到 date: 2019-05-30 23:35:44 tags: 配置 --- 准备工作 搭建好的博客 npm & ...
- 使用Jekyll + GitHub Pages免费搭建个人博客
使用Jekyll + GitHub Pages免费搭建个人博客 My Blog:无名の辈 | VectorX (vectorxxxx.github.io) Download Ruby:Download ...
- GitHub Pages + Hexo搭建个人博客网站-github风格-采坑记录
目录 1.本机安装nodejs 2.github上创建仓库 3.安装hexo 4.hexo主题 5.配置主题 6.添加文章 7.使用分类和标签 8.增加文章目录 9.推送github 使用github ...
- 使用GitHub Pages+Jekyll搭建个人博客
GitHub Pages 免费无限容量的站点数据托管工具(国内访问速度较慢),内置Jekyll服务,能将特定名称的代码仓库动态编译为静态网页 Jekyll 基于Ruby的静态网页生成系统,采用模板将M ...
- 使用Hexo和Github Pages快速搭建个人博客
在编程路上,每天都在网上查看别人的博客,大牛的文章写得通俗易懂,同时博客网站也非常华丽.作为出入编程的一枚小白也想拥有这样一个自己的网站.那就立马去买一个域名了,在网上找教程来搭建. 搭建的过程还算比 ...
- Github Pages+Gridea搭建个人博客
1 概述 Github Pages可以用来托管个人网站,静态的,便于用来实现博客,可以在一个仓库的settings中开启: Gridea是一个静态博客写作客户端,所有文件都在本地,没有数据库,实现简单 ...
- 在github上搭建个人博客并在线更新
换博客比更博还勤的我终于决定写一篇博客搭建教程了.. FAQ Q:\(hexo\)需要本地编译.\(jekyll\)虽然可以直接上传\(md\)..但是如果在github上直接编译也太难受了叭,毕竟不 ...
- 如何使用 GitHub Pages 维护自己的博客
目录 前置知识 实际操作 声明 本文地址:如何使用 GitHub Pages 维护自己的博客 前置知识 首先,你应该知道如何用 Hexo 在本地搭建一个博客系统,具体见 Hexo. 其次,我们如果想使 ...
随机推荐
- GDB调试工具
1.运行代码的三种情况 a.运行时有逻辑问题 gdb a.out 设置断点 单行执行 b.运行代码没有退出 一直运行 结束不了 挂载调试 跟踪调试 -g ...
- linux tmux命令小结
http://note.youdao.com/noteshare?id=f1be507b4be27e53684b46a1424746b5
- Linux运维二:CentOS6.6系统安装后的基本配置与优化
CentOS6.6系统安装完成后还需要做一些配置与优化: 一:Linux内核版本号介绍 查看内核版本: [root@Gin scripts]# uname -r 2.6.32-504.el6.x86_ ...
- Python【requests】第三方模块
import requests print("===============get请求================")url = 'http://api.nnzhp.cn/ap ...
- Hadoop生态圈-Hive函数
Hadoop生态圈-Hive函数 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.
- Java基础-IO流对象之File类
Java基础-IO流对象之File类 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IO技术概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下 ...
- java基础-Math类常用方法介绍
java基础-Math类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Math类概念 Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函 ...
- centos7.2 rabbitmq3.6.2源码部署
1.安装所有依赖包yum install -y gcc ncurses ncurses-base ncurses-devel ncurses-libs ncurses-static ncurses-t ...
- PHP7 学习笔记(二)PHP5.9 升级到PHP7 遇到的一些坑的记录(php-fpm 图解)
apache_event_php-fpm 示意图: nginx-php-fpm示意图: Worker-Master-Server TCP-Nginx_PHP Nginx-FastCGI 1.使用$_G ...
- TV 开发相关
1.设置全屏,隐藏虚拟按键 1.activity oncreate中 @Override 2 protected void onCreate (Bundle savedInstanceState) { ...