(一)Github + Hexo 搭建個人博客超詳細教程

本文首次發佈於我的博客:www.muyiio.com

前言

  • 作爲一名計算機愛好者,摸索了一週搭建出自己的博客。目前只學 習了c語言,沒有任何前端知識和網站開發經驗,總的來說,算不上很難, 但也要費些心思。網上各類教程應有盡有,只要肯摸索,還是水到渠成的事。另外,寫下這篇文章,記錄下自己的經驗,給需要的朋友,祝你早日擁有自己的博客!

  • 搭建博客的初衷是希望用博客記錄下自己的學習過程,幫助自己複習,分享一部分不成熟的思考,敦促自己把既定的目標完成。

  • 爲什麼要搭建自己的博客?可以看看這三篇文章:

《爲什麼你應該(從現在開始就)寫博客》 (By 劉未鵬 | Mind Hacks)

《爲什麼要自建博客?》 (By 知乎)

《我爲什麼寫博客》 (By 知明所以)

我們需要知道搭建博客要用到的框架。Hexo是高效的靜態站點生成框架,它基於Node.js。我們使用MarkDown在本地編輯我們的博客文章,通過Hexo生成靜態頁面,再用兩條命令即可部署到我們的網站。無需關心網頁源代碼的具體細節,我們只需要用心寫好自己的博客內容就行。

本文目錄

  • 快速搭建
  • 安裝Node.js
  • 添加國內鏡像
  • 安裝Git
  • 註冊Github賬號
  • 創建Git倉庫
  • 安裝Hexo
  • 配置本地Hexo
  • 連接Github與本地
  • 寫文章、發佈文章
  • MarkDown文章編輯器說明
  • 配置個性化域名
  • 更換自己喜歡的Hexo主題
  • 我的博客源代碼
  • 結語

快速搭建

有的朋友可能不想去折騰,自定義主題也比較麻煩,亦或有嘗試幾次搭建卻失敗,那就可以看這部分。快速搭建可以幫助我們更快搭建出自己的博客,優點是別人博客有的東西你都有,就跟複製差不多;缺點是博客裏的配置信息都是別人的,不過不要緊,稍稍改改配置就可以。

在這裏以我的博客爲例。

一、下載博客源代碼

大家可以直接素質二連,Star&Fork我的博客源代碼:https://github.com/MUYIio/Hexo-matery-Themes,這裏我給出兩種下載方法:

第一種:直接DownLoad,下載到本地就可以。

第二種:如果你已經安裝了Git,就可以右鍵單擊Come Bash Here運行 git clone [email protected]:MUYIio/Hexo-matery-Themes.git 將所有文件下載到本地,這個複雜一點。

二、修改博客文檔配置

首先將我們下載的博客源代碼解壓,然後修改主要配置:

  • 根目錄配置文件_config.yml和主題目錄配置文件_config.yml中修改個人信息。
  • 根目錄配置文件中修改deploy一欄的repository
  • 根目錄配置文件中修改baidu_url_submit一欄的token
  • 主題配置文件中修改gitalk一欄,修改方法見正文。

我給出的是博客比較明顯的幾個地方,先修改這幾個地方,其它的可以自己慢慢摸索修改。

最後一步,本地的運行環境還是需要搭建好的,跟着下文操作到連接Github與本地,環境就算是搭建完成。

本地環境搭建好之後會生成的文件:

然後直接把Hexo文件夾刪掉,把我的源代碼的Hexo文件夾移動過來:

就是這樣了:

然後在Hexo文件夾下右鍵單擊鼠標,點擊 Git Bash Here點擊輸入以下命令上傳就可以了:

hexo clean
hexo g
hexo d

安裝Node.js

瞭解一下什麼是Node.js

Node.js就是一個用於創建服務器端應用程序的運行系統,它可以輕鬆構建網絡或其他事件驅動的應用程序服務器。

需要用到的命令:

$ git --version
$ node -v
$ npm -v

點擊此處進入Node.js官網下載相應版本即可,安裝時選項全部默認,一路點擊Next

檢驗是否安裝成功:
Win+R打開命令提示符,輸入node -vnpm -v,如果出現版本號,那麼就安裝成功了。

添加國內鏡像

這裏我們使用阿里的國內鏡像進行加速。

npm config set registry https://registry.npm.taobao.org

安裝Git

Git是一個開源的分佈式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理,幫助我們把本地網頁上傳到Github

點擊此處進入Git官網下載相應版本,默認安裝即可。

參考資料:《如何在windows下安裝GIT》 (By 俊雨廷休)

檢驗是否安裝成功:

安裝完成後在命令提示符中輸入git --version驗證是否安裝成功

git --version

註冊Github賬號

Github作爲全球最大的開源社區,相信朋友們都已經有了吧,如果沒有,點擊此處進入Github官網點擊 Sign Up 註冊賬戶。

創建git倉庫

登錄Github創建一個倉庫

如下圖所示,輸入自己的項目名字,後面一定要加.github.io後綴,README初始化也要勾上。名稱一定要和你的Github名字完全一樣,比如你github名字叫A,那麼倉庫名字一定要是A.github.io

選擇一個自己喜歡的主題:
在上面創建的倉庫裏面點擊Settings(不是頭像下面那個Settings),向下拉到最後有個GitHub Pages,點擊Choose a theme選擇一個主題。然後等一會兒,再回到GitHub Pages,就可以預覽效果啦。

安裝Hexo

Hexo是一款基於Node.js的靜態博客框架,依賴少易於安裝使用,可以方便的生成靜態網頁託管在GitHubHeroku上,是搭建博客的首選框架。

選擇一個磁盤,新建一個文件夾用來存放博客文件。比如我的(C/panakot Blog),在該文件夾下右鍵單擊鼠標,點擊 Git Bash Here,輸入以下 npm 命令即可安裝

$ npm install hexo-cli -g

輸入hexo -v即可檢驗是否安裝成功,我這裏就不演示了。

配置本地hexo

還是在剛纔新建的文件夾下再新建一個Hexo文件夾,比如我的(C/panakot Blog/Hexo),在Hexo文件夾下右鍵單擊鼠標,點擊 Git Bash Here,依次輸入以下 npm 命令即可初始化。

hexo init   #初始化文件夾

初始化成功生成的文件:

接着我們輸入hexo g生成靜態網頁,然後輸入hexo s打開本地服務器,然後瀏覽器打開http://localhost:4000/,就可以預覽我們的博客啦,如圖:

顯示以下信息說明操作正確:

INFO Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.

ctrl+c關閉本地服務器。

我們以後常用到的Hexo命令:

  • hexo s等價於 hexo server #Hexo 會監視文件變動並自動更新,除修改站點配置文件外,無須重啓服務器,直接刷新網頁即可生效。

  • hexo g 等價於 hexo generate #生成靜態網頁 (執行 $ hexo g後會在站點根目錄下生成public文件夾, hexo會將"/blog/source/" 下面的.md後綴的文件編譯爲.html後綴的文件,存放在"/blog/public/ " 路徑下)

  • hexo d 等價於 hexo deploy #將本地數據部署到遠端服務器(如github)

  • hexo clean #清除緩存 ,網頁正常情況下可以忽略此條命令,執行該指令後,會刪掉站點根目錄下的public文件夾

連接Github與本地

一、生成密鑰

右鍵單擊鼠標,點擊 Git Bash Here輸入以下命令:

git config --global user.name "Name"
git config --global user.email "Email"

NameEmail是我們註冊Github時的用戶名和郵箱。

然後生成密鑰:

ssh-keygen -t rsa -C "Email"

Email是我們註冊Github時的郵箱

然後會出現:

Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa):
//到這裏可以直接回車將密鑰按默認文件進行存儲

回車之後:

Enter passphrase (empty for no passphrase):
//這裏是要你輸入密碼,其實不需要輸什麼密碼,直接回車就行
Enter same passphrase again:

接下來會有:

Your identification has been saved in /c/Users/you/.ssh/id_rsa.
Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
The key fingerprint is:
這裏是各種字母數字組成的字符串,結尾是你的郵箱
The key's randomart image is:
這裏也是各種字母數字符號組成的字符串

現在密鑰已經生成,一般存放在(/c/Users/you/.ssh/id_rsa.pub.),我們運行下面的命令將密鑰複製爲粘貼板:

 clip < ~/.ssh/id_rsa.pub

二、連接Github

Github頭像下面點擊Settings,再點擊SSH and GPG keys,新建一個SSH,名字任意。

然後將剛纔複製的密鑰添加就可以了,像這樣:

本地連接Github

右鍵單擊鼠標,點擊 Git Bash Here輸入以下命令,如果如下圖所示,出現你的用戶名,那就成功了

ssh -T [email protected]
//注意不要做任何修改

用記事本打開博客根目錄下的_config.yml文件,這是博客的配置文件,我們需要修改一下才能連接Github

修改最後一行的配置:

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
  type:

改爲:

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
  type: git
  repository: [email protected]:panakot/panakot.github.io.git
  branch: master

切記:

  • repository修改爲你自己的github項目地址
  • 每一個冒號後面都有一個空格。

寫文章、發佈文章

首先在博客根目錄下右鍵打開Git Bash Here輸入以下命令,安裝一個擴展.

npm i hexo-deployer-git

然後輸入下面的命令,新建一篇文章。

hexo new post "article title"

然後打開C:\panakot Blog\Hexo\source_posts的目錄,可以發現下面多了一個文件夾和一個.md文件,一個用來存放你的圖片等數據,另一個就是你的文章文件啦。

編寫完markdown文件後,根目錄下右鍵打開Git Bash Here輸入hexo g生成靜態網頁,然後輸入hexo s可以本地預覽效果,最後輸入hexo d上傳到github上。

你的博客地址:https://你的用戶名.github.io,比如我的是:https://muyiio.github.io,現在每個人都可以通過此鏈接訪問你的博客

MarkDown文章編輯器說明

前面我們提到了使用MarkDown編輯我們的博客文章。 Markdown 2004 年由 John Gruberis 設計和開發的純文本格式的語法,非常的簡單實用,常用的標記符號屈指可數,幾分鐘即可學會, .md 文件可以使用支持 Markdown 語法的編輯器編輯,然後將寫好的文章(.md文件)保存到 \Hexo\source_posts 文件夾下即可。

Windows 上推薦使用 MarkdownPad2 或者小書匠編輯器,macOS 上使用 Mou 編輯器,Linux 上使用 Remarkable 編輯器,Web 端上使用 簡書。

點擊此處下載MarkDown
,剛使用的朋友或許不知道如何使用這個編輯器,只需要幾分鐘就可以掌握啦,給出以下幾個我覺得不錯的參考:

《獻給寫作者的 Markdown 新手指南》 (By 簡書)

《Markdown語法圖文全面詳解(10分鐘學會)》(By 黑暗星球)

《Markdown 語法手冊 (完整整理版)》 (By witnessai1)

《認識與入門 Markdown》(By Te_Lee)

寫完文章記得在博客根目錄Bash Here輸入hexo ghexo d上傳到網站。

配置個性化域名

一頓操作下來,打開我們的博客還是:www.xxx.github.io,是不是很沒有牌面?我們可以考慮購買一個專屬域名,以後打開博客就是這樣:www.xxx.com

阿里雲騰訊雲都可以,我的是騰訊雲,購買域名後首先需要添加解析:

**方法一:**點擊添加記錄,需要添加兩個記錄,兩個記錄類型都是 CNAME ,第一個主機記錄爲 @ ,第二個主機記錄爲 www,記錄值都是填你自己的博客地址(比如我的是:muyiio.github.io),保存之後域名解析就完成了!
在這裏插入圖片描述

**方法二:**兩個記錄類型爲 A ,第一個主機記錄爲 @ ,第二個主機記錄爲 www,記錄值都爲博客的 IP 地址,IP 地址可以 cmd 中輸入 ping 你的博客地址 獲得(比如我的:ping muyiio.github.io),保存之後域名解析就完成了!

參考資料:

《域名解析中A記錄、CNAME、MX記錄、NS記錄的區別和聯繫》

不管在哪個平臺購買域名,操作都大同小異,這裏說明兩點

如果你填寫的是沒有www的,比如 muyio.com,那麼無論是訪問 https://www.muyiio.com 還是 https://muyiio.com ,都會自動跳轉到 https://muyiio.com

如果你填寫的是帶www的,比如 www.muyiio.com ,那麼無論是訪問 https://www.muyiio.com 還是 https://muyiio.com ,都會自動跳轉到 http://www.imuyiio.com

然後打開你的github博客項目,點擊settings,拉到下面Custom domain處,填上你自己的域名,保存就可以了。

現在我們的項目根目錄應該會出現一個名爲CNAME的文件了。如果沒有的話,打開你本地博客/source目錄,我的是C:\Blog\Hexo\source,新建CNAME文件,(注意不要加.txt,沒有任何後綴名!)。然後在裏面寫上你的域名,保存。最後運行hexo g、hexo d上傳到github

現在就可以通過我們的個性化域名:www.xxx.com、xxx.com訪問自己的博客了。

更換自己喜歡的Hexo主題

點擊進入Hexo主題專欄可以看到很多Hexo主題:

推薦:

幾個好用的hexo主題 (By fail_perfectly)

這裏我們以Bean Tech主題爲例,下滑到底部我們可以看到他的GitHub有的主題是:Theme by xxx,點擊那裏也是進入GitHub地址):

點擊進入主題的GitHub地址:

複製該項目地址:

然後打開 Hexo 文件夾下的 themes 目錄(如:C:\MUYIio Blog\Hexo\themes),右鍵 Git Bash Here,輸入以下命令:

$ git clone 此處填寫你剛纔複製的主題地址

以我們剛纔複製的爲例:

$ git clone https://github.com/Huxpro/huxpro.github.io

下載完成後即可在 themes 目錄下生成 hexo-theme-Bean-Tech 文件夾,然後打開 Hexo 文件夾下的配置文件 _config.yml ,找到關鍵字 theme,修改參數爲:theme:hexo-theme-Bean-Tech (其他主題修改成相應名稱即可),再次注意冒號後面有一個空格!

現在我們的主題已經替換完成,將它部署到我們的博客,博客根目錄下右鍵 Git Bash Here,輸入以下命令:

hexo clean
hexo g
hexo d

現在訪問我們的網站就可以看到主題已經更換了,但是比如網站標題,圖標等都沒有更換,我們博客文件中有兩份主要的配置文件,名稱都是 _config.yml ,它們均是用於站點配置使用的。其中,一份位於站點根目錄下(比如我的:C:\MUYIio Blog\Hexo_config.yml),主要包含 Hexo 本身整站的配置;另一份位於主題目錄下(比如我的:C:\MUYIio Blog\Hexo\themes\hexo-theme-matery_config.yml),這份配置由主題作者提供,主要用於配置主題相關的選項,一般 _config.yml 文件裏都有相關注釋,按需修改即可。

我的博客源代碼

我的博客源代碼地址:https://github.com/MUYIio/Hexo-matery-Themes,有心的話可以給個Star&Fork

在文章開頭給出了快速搭建教程,相對於自己從頭開始搭建還是比較方便的,修復了很多Bug,也添加了一些插件,下載就可以使用,可以幫你們省去個性化配置帶來的很多麻煩。

主題的原地址在這裏:hexo-theme-matery,作者把文檔寫得也非常的詳細,還有中英文兩個版本,建議可以多看幾遍,在本地修改的時候輕鬆一些。

使用我的源代碼之前本地的環境還是要搭建好,就是前面一部分。

結語

初學者可能會覺得困難,畢竟很多東西都是第一次接觸,當初我也嘗試了好幾次才成功,不要放棄,弄錯了就刪掉重新來過,當你把博客搭建出來會覺得受益良多的。

文章中難免有錯誤的地方,有大佬發現了歡迎給我指正!有的地方解釋不夠詳細,可以百度一下看看細節,文章中的引用以及參考資料涉及侵權請聯繫我刪除!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章