Hexo+git博客搭建

mac2022-06-30  96

前言

早就想换一换我之前使用的wordpress博客了,昨天偶然看到一个学长的博客感觉前端简洁大气,于是查了一下他所用的Hexo这个博客框架。从doc来看使用简单,md的编辑方式很高效,浏览了一下主题也有几个不错的,于是趁着考试周之前的日子赶紧把博客搭建起来了。

搭建的环境是Mac+Ubuntu14.04

本地安装搭建博客

本地安装hexo框架

先使用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

通过git部署至远程服务器

配置git

首先确认自己是否拥有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 d

git 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

 由于我的服务器上之前就已经安装好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上百实例源码以及开源项目
最新回复(0)