本文同時(shí)發(fā)布在我的個(gè)人博客上:https://dragon_boy.gitee.io
最近萌生搭建個(gè)人博客的想法,正好還可以把之前在簡書上寫過的文章保存起來。
在網(wǎng)上搜索了許多搭建個(gè)人博客的方法,無外乎這么幾種:
- 用購買的服務(wù)器加上域名,配上一些博客或網(wǎng)頁創(chuàng)建系統(tǒng)來搭建個(gè)人網(wǎng)站,不過因?yàn)槟承﹤€(gè)人原因,暫時(shí)沒辦法對(duì)域名進(jìn)行實(shí)名認(rèn)證,所以這個(gè)暫時(shí)放棄。
- 各種git平臺(tái)的的靜態(tài)pages功能(如github pages,gitee pages,coding pages等)配上一些博客系統(tǒng)(hexo,Jekyll , Gridea等),這里介紹這種方法。
首先選擇哪個(gè)git平臺(tái),我嘗試了使用github pages,但很難受,我只能在FAN QIANG狀態(tài)下正常訪問,而且速度偏慢,改了hosts也沒啥用,而且文章數(shù)如果多了起來,更新網(wǎng)站的速度更是慢得不行,所以還是選擇國內(nèi)的一些git平臺(tái)比較好,比如碼云(gitee),Coding等。
然后是博客系統(tǒng)的選擇,我首先嘗試的是Gridea,界面可以,挺好看的,但就是只支持github pages和coding pages,還有個(gè)人服務(wù)器搭建。github pages不用說,速度慢,我失敗了無數(shù)次。coding我也試了很多次,實(shí)在是找不出問題所在(基本都是連不上的問題,沒法解決)。如果想嘗試的小伙伴可以去官網(wǎng)看看https://gridea.dev/,上面有搭建方法。
這里我使用的是hexo+gitee。
環(huán)境配置
首先要下載Node.js,然后安裝Git,接著注冊(cè)碼云,最后安裝Hexo,Hexo安裝命令行(cmd 或 gitbash):
npm install hexo-cli -g
速度慢可以先改一下安裝源:
npm config set registry https://registry.npm.taobao.org
個(gè)人博客搭建
在想要存放博客的目錄里右鍵打開gitbash,然后輸入:
hexo init
接著生成靜態(tài)頁面:
hexo g
然后啟動(dòng)本地服務(wù),查看界面是否生成:
hexo s
將http://localhost:4000
復(fù)制到瀏覽器查看,默認(rèn)主題為landscape
。(在下面的每次配置中,對(duì)根目錄的_config.yml
修改后都要重新執(zhí)行hexo g
,同時(shí)可以不斷刷新本地服務(wù)查看效果)
主題
博客系統(tǒng)至此基本搭建完,我們接下來更換主題。在themes
文件夾下右鍵gitbash,輸入下面的命令:
git clone https://github.com/theme-next/hexo-theme-next.git
打開根目錄下的_config.yml
配置文件,修改主題:
如果不滿意當(dāng)前的界面,可以更換以下,next主題提供了四種模式,在
hexo-theme-next
的_config.yml
文件中修改:我用的是第4種。
發(fā)布文章
新建文章方法:在項(xiàng)目根目錄,打開gitbash:
hexo new "paper's name"
然后就可以在/source/_posts
找到markdown文件。
使用已有markdown文件:復(fù)制到上述目錄即可,注意在文件頭加上一些信息,基本結(jié)構(gòu):
---
title: name
date: ****-**-** **:**:**
others: some description
---
添加完文章后記得hexo g
更新一下。
個(gè)性化
接著設(shè)置博客側(cè)邊欄,在根目錄的_config.yml
中:
大家可以都試一下,我的效果:
如何設(shè)置頭像?在主題文件夾的
_config.yml
中,在avatar
功能下修改:
可以根據(jù)注釋明白功能是什么。
然后設(shè)置網(wǎng)站圖片:
替換主題文件夾下的/source/images
的三張圖片即可(顯示為N的那幾張)
或者在主題的
_config.yml
中修改文章分類和標(biāo)簽
在項(xiàng)目根目錄執(zhí)行下面的命令:
hexo new page categories
source文件夾下就會(huì)生成categories
文件夾,修改里面的.md文件:
接著在主題文件夾的
_config.yml
中開啟分類:最后,要使用分類的話,只需要在發(fā)布的文章的.md中加上
categories
頭:標(biāo)簽等其它菜單功能同理。
首頁文章預(yù)覽
這里推薦最簡單的方法,在正文中使用``標(biāo)簽打斷,標(biāo)簽前的正文會(huì)顯示在預(yù)覽中:
還可以在文件頭中添加
description
功能:
description: some words
文章圖片顯示
如果圖片顯示有問題,可以使用下面這種方法:
先將根目錄的_config.yml
中的post_asset_folder
設(shè)置為true
:
這樣的話,新建文章時(shí)還會(huì)建立一個(gè)同名的文件夾,我們可以圖片放在這個(gè)文件夾下。
然后下載一個(gè)插件,根目錄下:
npm install https://github.com/CodeFalling/hexo-asset-image --save
這個(gè)插件可以自動(dòng)圖片修改路徑,然后在.md文件中,我們使用同名文件夾下圖片的相對(duì)路徑即可,比如:
至此,一個(gè)基本的博客功能差不多了,還想加功能的話可以去官方文檔或其它資料中尋找(比如搜索功能,各種網(wǎng)站效果等)。
部署到碼云
首先在碼云上創(chuàng)建一個(gè)倉庫,建議是倉庫名用用戶名,這樣的話生成的gitee pages的域名很短。復(fù)制倉庫連接。
在項(xiàng)目根目錄下的_config.yml
中,修改deploy的值,repo設(shè)置為倉庫鏈接:
然后修改git用戶名和郵箱為碼云的用戶名和郵箱:
git config --global user.name 碼云的名字
git config --global user.email 碼云的郵箱
接著安裝hexo-deployer-git
:
npm install hexo-deployer-git --save
然后部署到倉庫:
hexo g
hexo d
接著配置gitee pages:
強(qiáng)制使用HTTPS然后更新即可部署gitee pages。
接著在項(xiàng)目根目錄的_config.yml
中修改url和root:
root設(shè)置為倉庫名(我這里沒有子目錄,就設(shè)置為空就行)。
最后重新部署一遍博客即可:
hexo clean
hexo g
hexo d
注意,更新完后記得在碼云中更新一下gitee pages。
最后就可以通過gitee pages的域名訪問自己的博客了。
目前我將簡書的幾篇博客拷貝了過來進(jìn)行了一下測試。
我的博客:https://dragon_boy.gitee.io/