早就想换一换我之前使用的wordpress博客了,昨天偶然看到一个学长的博客感觉前端简洁大气,于是查了一下他所用的Hexo这个博客框架。从doc来看使用简单,md的编辑方式很高效,浏览了一下主题也有几个不错的,于是趁着考试周之前的日子赶紧把博客搭建起来了。
搭建的环境是Mac+Ubuntu14.04
先使用homebrew安装npm:
1 brew install npm使用npm安装Hexo
1 npm install hexo-cli -g安装Hexo-server
由于在hexo3中server被分离了出去所以要想在本地不通过apache等查看blog的话需要单独安装 1 npm install hexo-server --save新建Hexo博客
1234 mkdir myBlogcd myBloghexo initnpm install打开server:
1234 hexo server//结果如下:INFO Start processingINFO Hexo is running at http://localhost:4000/. Press Ctrl+C to stop生成静态文件:
1 hexo g如果此时显示hexo的帮助文档说明server没有成功安装。
可以通过浏览器访问http://localhost:4000/查看博客。如果显示Cannot Get / 检查是否有npm install更换主题
我使用的主题为aircloud。从github上下载源码放入theme文件。将hexo的_config.yml中的theme部分改为 1 theme: aircloud再次generate之后查看浏览器,如果显示找不到index.html,一般是由于theme的名称没有写对。theme后面要写在theme文件夹下所选主题的文件名。
在public文件夹下新建img文件夹,放入头像avatar.jpg和favicon.ico的icon图片,否则主题会显示找不到。如果使用此主题还有一些要修改的地方,直接参见其readme.md即可。删除多余的tags 12 hexo cleanhexo d -g首先确认自己是否拥有ssh密钥
12 cd ~/.sshls我们需要寻找一对以 id_dsa 或 id_rsa 命名的文件,其中一个带有 .pub 扩展名。 .pub 文件是你的公钥,另一个则是私钥。 如果找不到这样的文件(或者根本没有 .ssh 目录),你可以通过运行 ssh-keygen 程序来创建它们。在 Linux/Mac 系统中,ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。 ——git官网
将公钥放入服务器
将公钥复制加入系统用户的 .ssh 目录下 authorized_keys 文件的末尾。如果没有此文件的话自己新建一下。配置服务器
新建一个用于存放博客代码的文件夹。然后初始化git,新建master分支 12 git initgit checkout -b master注意不要新建bare仓库,不然会没有blog文件,只有git版本控制文件。
为了避免出现git拒绝push的情况,修改.git/config文件后面添加如下代码 12 [receive]denyCurrentBranch = ignore修改本地hexo的config文件
加入deploy部分: 1234 deploy: type: git repo: gituser@yourIpOrUrl:~/myBlog/ branch: master部署blog至服务器
1 hexo dgit hook远程git仓库在deploy之后并不会立刻更新,只有执行git reset --hard之后才可以,为了避免每次都手动执行这条语句,可以将它添加到myBlog/.git/hooks/post-update文件中。将原本的post-update.sample的.sample去掉即可使hook生效。如果deploy之后出现remote: fatal: Not a git repository: '.'就进一步修改post-update为:
123456789 #!/bin/sh## An example hook script to prepare a packed repository for use over# dumb transports.## To enable this hook, rename this file to "post-update".cd /root/myBlogunset GIT_DIRgit reset --hard安装apache2
由于我的服务器上之前就已经安装好apache2,且过程很简单,这里就不写这部分的教程了,可以参看其他blog。修改apache2配置
Apache2的config文件在/etc/apache2/apache2.conf,修改如下内容 添加文件访问权限 12345 <Directory /your/blog/directory> Options Indexes FollowSymLinks AllowOverride All Require all granted</Directory>修改Document/Root修改为你的git仓库的路径。
如果服务器上配置了多个网站,可以通过添加virtualHost来配置路径。在此不详细说了。更改文件权限
将git仓库的文件权限改为755,其上层文件也应改为755 1 chmod -R 775 /filename查看网页
在浏览器输入服务器的ip或者url。如果出现没有权限访问,要检查自己的文件权限和config文件是否修改正确。注意不要将directory /的deny from all 改为require all granted,非常不安全这篇小教程到这里就结束啦,希望你可以搭建顺利~
转载于:https://www.cnblogs.com/ver0n1ca/p/hexo_and_git.html
相关资源:JAVA上百实例源码以及开源项目