一年前使用Hexo + Github搭過一個博客,但是當時事情多,搭好之後也沒有後續維護,導致就不了了之了。現在閒下來,重新打開當時搭的博客,發現實在是太花哨了,因此決定重新搭一個,並記錄一下采坑的過程,以便後續更新。
簡單來說整個搭建過程可以理解成,將GitHub當成個人Blog的服務器,而Hexo就是一個博客框架,我們可以更換Hexo的主題,使博客個性化。
1 關於GitHub Pages
Github Pages 是 Github 免費給開發者提供的一款託管個人網站的產品, 可託管靜態內容, 非常適合用來搭博客。
2 關於Hexo
Hexo 是一個快速、簡潔且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在幾秒內,即可利用靚麗的主題生成靜態網頁。
1.Hexo官網:https://hexo.io/(官網右上角可選擇切換中文,方便閱讀)
2.Hexo的安裝:使用 Node.js 中的 npm 庫安裝Hexo。
3 Hexo環境搭建
1.前期需要準備的環境如下:
- Git 的安裝
- Github 賬戶的配置
- Node.js(npm)安裝配置
2.整個搭建過程爲:搭建Node.js環境 → 利用npm庫安裝Hexo → 配置Github賬戶(啓動GitHub Pages)→ 初始化Hexo → 更換你喜歡的Hexo主題 → 寫博客發文章。
3.接下來可以參考一個博主寫的搭建博文,但是有一些事項需要注意:
- 博主文章中給的Node.js版本過低,安裝時會WARN甚至會報錯,因此最好到Node.js官網安裝長期支持版本(LTS),Node.js官網:https://nodejs.org/zh-cn/
- 在 Hexo 連接 Github 之前務必配置 SSH,SSH配置(參考博客的第4點):https://blog.csdn.net/liangllhahaha/article/details/89565779
- 注意你的倉庫名稱一定是:yourname.github.io,其中 yourname 爲你的Github用戶名
4.好了,囉嗦那麼多,開始搭建吧:
4 Hexo主題更換
1.如果你不喜歡Hexo的默認主題:
可到Hexo官網或者知乎上選擇更換:
2.關於如何更換的問題:可參考設計者提供的Readme文檔,如果你是小白,建議你選擇對應Readme文檔寫得詳盡的主題,這樣方便你安裝。
3.悄悄地炫耀一下我的博客主題(不要臉 ):
高亮模式:
暗黑模式:
5 Hexo常用命令
1.首先推薦Hexo的官方說明文檔:https://hexo.io/zh-cn/docs/
2.常用命令:
- 新建一篇博客:
hexo new post "article title"
- 部署至本地服務器:
hexo s
- 運行生成、部署命令:
hexo g // 生成
hexo d // 部署
- 在部署前生成:
hexo d -g
6 解決Github博客訪問過慢問題的方案
經常使用Github的朋友都知道,因爲Github服務器在外網,訪問Github時經常會出現延時甚至拒絕訪問的情況。那麼我們基於Github服務器搭建的博客也不例外,有沒有好的解決方案?
- 開代理服務器
- 修改本機 Hosts 文件,繞過國內DNS解析,加快訪問速度。但是並不是你每一個朋友的電腦都幹了這麼
流氓的事,博客可能也需要給別人瀏覽。 - 做一些其他的速度優化處理,可參考網上資料。
- 因此我們可以考慮將 Hexo 博客同時部署到國內的Gitee上,如果以後Github真被牆了(參考伊朗),我們也可以有一個備份。
7 關於Gitee
碼雲 Gitee :是由開源中國(OSChina)出品,旨在樹立國內代碼託管和協作開發的行業標杆,靈活便捷地支撐個人、團隊、企業的開發需求的產品。
1.Gitee可以理解爲就是國內的Github,也使用 git 內核,我們可以將Hexo博文同時同步到 Github 和 Gitee上,國外訪問你的博客用Github(誰看啊 ),國內用戶使用Gitee。
2.Gitee官網:https://gitee.com/
3.可參考的博客:通過gitee和hexo搭建個人博客
4.關於將博客部署到Gittee服務器上,操作與Github原理一致,只是服務器由Github更改到Gitee上,更改只需要做兩點:
- 創建Gitee用戶以及個人倉庫(博客後綴名由 yourname.github.io 變成了 yourname.gitee.io)
- 修改本地Hexo根目錄下的 _config.yml 文件,將 Deployment 及 URL 更改爲相應的gitee鏈接
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yourname.gitee.io/
root: /
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: https://gitee.com/yourname/yourname.git
branch: master
- 不需要將代碼上傳到Gitee的倉庫中,使用hexo d -g 指令在本地部署上傳即可。
- 需要注意的是,gitee普通版不支持自動更新,即你用Hexo部署到服務器後,需要到Gitee Pages服務手動更新,更新的博文才會生效。
以上。歡迎留言一起討論!