实现在CentOS7环境下搭建个人github博客

实现在CentOS7环境下搭建个人github博客


主机要求:必须是centos环境版本可以不一样,假如你用的是其他版本的linux系统,只不过是命令不太一样。
Tips:这里提前说下,对于Ubuntu来说,以下类似操作必须要用户家目录中,这样你才能够给权限,自其它目录中,还没有办法给hexo或者git读写权限的。

这里首先提供三个链接地址,当你创建完成博客后,对一个很low的界面会抱怨的,作为一个视觉党,这简直是不能忍受的,所以这里推荐一个有着超级详细的教程的主题,里面有详细的设置。后面的设置都是和主题有关的,小编在这里只是写出来怎么搭建博客,和怎么上传到github上。

hexo的官方地址: https://hexo.io/
github的官方地址:https://github.com/
github-theme-next主题界面https://github.com/iissnan/hexo-theme-next

mkdir /app/blog# 创建一个单独属于blog的文件夹,名字自己随便cd /app/blog
wget  https://nodejs.org/dist/v6.11.1/node-v6.11.1-linux-x64.tar.xz# 从网上下载最新班的node.js软件,这个是必须的环境tar Jxvf node-v6.11.1-linux-x64.tar.xz# 解压`node-v6.11.1-linux-x64.tar.xz`文件mv node-v6.11.1-linux-x64 node# 修改一下名字名字太长写的麻烦

修改全局变量,加入全局变量文件中

vim /etc/profile
export PATH=$PATH:/app/blog/node/bin# 这个随便添加到哪里都行,一般我都加到最后source /etc/profile# 重新加载环境配置文件# 创建目录mkdir hexo# 切换目录cd hexo

安装Git(已安装可跳过)

yum install git-core

安装 Hexo

npm install -g hexo-cli
初始化 Hexo
hexo init 初始化安装

假如错误的话,这里提供解决方案

npm install
hexo init(不过这里会提示你文件夹不是空的,所以你需要把原来的文件夹删除,重新创建)

启动hexo

[root@VinnyWang testgithub.io]# hexo serverINFO  Start processing
INFO  Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.

这里我们不关闭终端,我们直接点击打开链接,一个你将来的博客界面就会出现了,假如失败的话,重头来,最简单的办法,要不然就排错,错误很多,这里就不一一写出来了。

到了这里,我们就是把环境搭建成功了,到时候吧本地的升值同步到github上就好了。但是这里我们先不需要着急,我们刚才生成的只不过是hexo为我们提供的模板网页,里边还是会有很多信息需要修改的,下面我们进入配置文件进行修改,最主要我们修改的地方有两个地方,一个是开头一个是结尾。

# Hexo Configuration## Docs: https://hexo.io/docs/configuration.html## Source: https://github.com/hexojs/hexo/# Site     # 站点信息title: Hexo   # 标题subtitle:   # 副标题description:  # 站点描述,这个地方会被搜索引擎收录author: John Doe   #  作者,可以把John Doe改成自己language:     # 语言类型,看你选择什么主题,里面会有设置的,一般情况下写   zh-CNtimezone:   # 时区  有的主题文件会有需要的# URL## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'url: http://yoursite.com  # 网址root: /  # 根目录,这个地方在你准备同步到网上时候,修改成你的库名字,比如我的是vinnywang.github.io就写这个名字permalink: :year/:month/:day/:title/ # 文章的链接格式permalink_defaults: # 默认链接# Directorysource_dir: source # 源文件生成目录public_dir: public # 生成网页文件目录tag_dir: tags # 标签目录archive_dir: archives # 存档目录category_dir: categories # 分类目录code_dir: downloads/code 
i18n_dir: :lang
skip_render:# Writingnew_post_name: :title.md # File name of new posts # 新标题default_layout: post # 默认的模板post、page、photo、draft(文章、页面、照片、草稿)titlecase: false # Transform title into titlecase # 标题是否转换为大写external_link: true # Open external links in new tab # 新的tab打开页面filename_case: 0 render_drafts: falsepost_asset_folder: falserelative_link: falsefuture: truehighlight: # 语法高亮
  enable: true # 是否启用
  line_number: true # 显示行号
  auto_detect: false 
  tab_replace:# Home page setting# path: Root path for your blogs index page. (default = '')# per_page: Posts displayed per page. (0 = disable pagination)# order_by: Posts order. (Order by date descending by default)index_generator:
  path: ''
  per_page: 10
  order_by: -date# Category & Tag # 分类标签default_category: uncategorized # 默认category_map:
tag_map:# Archives2: 开启分页1: 禁用分页0: 全部禁用
archive: 2category: 2tag: 2# Date / Time format  # 日期时间格式## Hexo uses Moment.js to parse and display date## You can customize the date format as defined in## http://momentjs.com/docs/#/displaying/format/date_format: YYYY-MM-DD # 默认设置的格式time_format: HH:mm:ss 

# Pagination # 分页## Set per_page to 0 to disable paginationper_page: 10 # 每页为10篇文章pagination_dir: page 

# Extensions # 扩展插件## Plugins: https://hexo.io/plugins/## Themes: https://hexo.io/themes/theme: landscape # 主题 装机完成之后,默认为landscape# Deployment # 开发后面部署到github上时会使用到,不要填错了## Docs: https://hexo.io/docs/deployment.htmldeploy:
  type:  git
  repo:git@github.com:mocorochio/micorochio.github.io.git # 这个是填你自己生成的库的链接地址
  branch: master
  message: '站点更新:{{now("YYYY-MM-DD HH/mm/ss")}

上面的repo可能会有很多人不知道怎么填写,这里给个地址,是红色箭头所指的网址。

实现在CentOS7环境下搭建个人github博客

[root@VinnyWang testgithub.io]# git config --global user.email "20843205@qq.com"

输入你的email账号,和你注册时候的email相同,不要填错了

[root@VinnyWang testgithub.io]# git config --global user.name "vinnywan"

这里填上你的用户名,和你注册时候的一样哦

[root@VinnyWang testgithub.io]# less  ~/.ssh/id_rsa.pub/root/.ssh/id_rsa.pub: No such file or directory

这个地方是检查你有没有key文件,有的话略过下边的操作。

[root@VinnyWang testgithub.io]# ssh-keygen -t rsa -C 20843205@qq.com

这个操作是生成key文件,假如你们有的话,需要生成,一路回车就好了。

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:64:a7:2d:64:97:a9:27:51:9d:22:c1:07:a8:74:8d:ac 20843205@qq.com
The key's randomart image is:
+--[ RSA 2048]----+
|     . =oo.. .        |
|    . = +.ooo         |
|   . +  *o=.          |
|    E  = B            |
|        S o           |
|         +            |
|                      |
|                      |
|                      |
+-----------------+
vim /root/.ssh/id_rsa.pub

然后把这个文件上的全部复制出来,等下有用。
现在我们本地的环境已经搭建完成了,但是我们还没有同步到网上,所以这个地方我们需要创建一个github账号,最上面提供的有github的官方网址,点击进去就好了。
创建用户账户就不用我教了吧,按照提示一步一步做下去就好了。但是这里先提前说下,不要乱填,用户名不要起的太奇葩,后面还要用到。这里只是给提供一些创建账号之后的步骤。但你登录github账号之后是这个样子的。

实现在CentOS7环境下搭建个人github博客

我们点击 start a project之后会弹出这个界面

实现在CentOS7环境下搭建个人github博客

这个上面我用红色箭头指出来的千万不要乱写,格式是:用户名.github.io写完之后,直接点击最下面的 create repository
创建完成库了,我们需要吧本地的文件同步到github上,但是同步的话,怎么认证呢?这个时候就需要用到,我们之前生成的key文件了。

实现在CentOS7环境下搭建个人github博客

按照顺序点击,反正也点不错。之后还有一个界面。

实现在CentOS7环境下搭建个人github博客

按照顺序填写,记得一定要选择sshkey不要用另外一个。把我们上面生成的key里面的内容复制到中间的空白处,随便给个名字就好了。

好了上面的我们做完了,现在就需要将本地和网络上同步起来

git init 
git add . # 将本地文件添加到缓冲区中git commit -m "提交文件" # 给想要提交的动作一个名字 引号内部内容随便git remote add origin https://github.com/vinnywan.github.io指明你远程的库是什么
git push -u origin master
将缓冲区添加的文件同步到库中,速度看网速了。

这个时候可能会出现一些问题,所以这里提供了两个解决的办法
1.使用强制push的方法:

git push -u origin master -f

这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。
2.push前先将远程repository修改pull下来

git pull origin master
git push -u origin maste

这里给些常用的命令:

git add *#跟踪新文件git rm -f * #强制删除所有文件git commit#提交更新git commit -m "注释文本"    #添加注释git commit -a   #跳过使用暂存区域,把所有已经跟踪过的文件暂存起来一并提交git commit --amend  #修改最后一次提交git push origin "resposbilty"hexo g # 部署hexo d # 提交


本文转自 佛哒 51CTO博客,原文链接:http://blog.51cto.com/fodaa/1951198,如需转载请自行联系原作者
上一篇:ASP.NET MVC3 Razor视图引擎-“.NET技术”基础语法


下一篇:AutoLoadCache 5.4 增加分布式锁及事务下删除缓存处理