基於 Hexo 從零開始搭建個人部落格(二)

閱讀本篇前,請先配置好相應的環境,請仔細閱讀教程 基於 Hexo 從零開始搭建個人部落格(一)

原文鏈接:基於 Hexo 從零開始搭建個人部落格(二)

前言

  1. 部落格搭建過程遇到任何問題,優先在本頁面搜索,檢查是否已經有該配置教程。
  2. 遇到問題可以優先在文章評論區留言,注意留言時請填寫正確的郵箱以確保能收到站長的回復。
  3. 實在解決不了的問題可添加站長 Wechat ,添加好友時請備註自己的姓名+專業,如 張三 電腦科學與技術。

初始化 Hexo 項目

  1. 在目標路徑(我這裡選的路徑為【G:/hexo-blog】)打開cmd命令窗口,執行hexo init初始化項目。
hexo init blog-demo(項目名)


2. 進入blog-demo ,輸入npm i安裝相關依賴。

cd blog-demo  //進入blog-demo文件夾
npm i


3. 初始化項目後,blog-demo有如下結構:
【node_modules】:依賴包
【scaffolds】:生成文章的一些模板
【source】:用來存放你的文章
【themes】:主題
【.npmignore】:發布時忽略的文件(可忽略)
【_config.landscape.yml】:主題的配置文件
【_config.yml】:部落格的配置文件
【package.json】:項目名稱、描述、版本、運行和開發等資訊
在這裡插入圖片描述
4. 輸入hexo server或者hexo s
在這裡插入圖片描述
5. 打開瀏覽器,輸入地址://localhost:4000/ ,看到下面的效果,說明你的部落格已經構建成功了。
在這裡插入圖片描述

將靜態部落格掛載到 GitHub Pages

上一篇文章中,我們已經完成了對 GitHub 賬戶的註冊以及 Github Pages 的創建,並且為 GitHub 配置了 SSH key, 我們將部落格部署到 GitHub Pages 上即可。

安裝 hexo-deployer-git

npm install hexo-deployer-git --save

修改 _config.yml 文件

blog-demo目錄下的_config.yml,就是整個Hexo框架的配置文件了。可以在裡面修改大部分的配置。詳細可參考官方的配置描述

修改最後一行的配置,將repository修改為你自己的github項目地址即可。

deploy:
  type: git
  repository: [email protected]:tzy13755126023/tzy13755126023.github.io.git
  branch: master

部署項目到 GitHub

修改好配置後,運行如下命令,將程式碼部署到 GitHub。

hexo clean
hexo generate
hexo deploy
  • hexo clean:刪除之前生成的文件,若未生成過靜態文件,可忽略此命令。
  • hexo generate:生成靜態文章,可以用hexo g縮寫
  • hexo deploy:部署文章,可以用hexo d縮寫

在這裡插入圖片描述

注意:deploy時可能要你輸入 username 和 password。

如果出現Deploy done,則說明部署成功了。
在這裡插入圖片描述
打開瀏覽器訪問://tzy13755126023.github.io ,這時候我們就可以看到部落格內容了。
在這裡插入圖片描述

設置個人域名

現在你的個人網站的地址是 yourname.github.io。如果覺得不夠訂製化,可以購買一個專屬域名。

這一步不是必要的,如果目前還不想買域名可以先跳過。

騰訊雲、阿里雲等都是不錯的選擇,部落客選擇的阿里雲的.com。購買域名後,實名認證進入阿里雲控制台,點雲解析進去,找到你剛買的域名,點進去添加兩條解析記錄,記錄值 請填寫<用戶名>.github.io,如下圖所示:

在這裡插入圖片描述
以我的域名tzy1997.com為例,進行如下說明:

主機記錄 解釋
www 解析後的域名為 www.tzy1997.com
@ 直接解析主域名 yafine-blog.cn
* 泛解析,匹配其他所有域名 *.yafine-blog.cn
mail 將域名解析為 mail.yafine-blog.cn,通常用於解析郵箱伺服器
二級域名 如 abc.yafine-blog.cn,填寫 abc
手機網站 如 m.yafine-blog.cn,填寫 m
顯性URL 不支援泛解析(泛解析:將所有子域名解析到同一地址)

將域名指向雲伺服器,請選擇「A」; 將域名指向另一個域名,請選擇「CNAME」; 建立郵箱請選擇「MX」,根據郵箱服務商提供的 MX 記錄填寫。

記錄類型 解釋
A 用來指定域名的 IPv4 地址(如 8.8.8.8),如果需要將域名指向一個 IP 地址,就需要添加 A 記錄。
CNAME 如果需要將域名指向另一個域名,再由另一個域名提供 IP 地址,就需要添加 CNAME 記錄。
MX 如果需要設置郵箱,讓郵箱能收到郵件,就需要添加 MX 記錄。
TXT 在這裡可以填寫任何東西,長度限制 255。絕大多數的 TXT 記錄是用來做 SPF 記錄(反垃圾郵件)
NS 域名伺服器記錄,如果需要將子域名交給其他 DNS 服務商解析,就需要添加 NS 記錄。
AAAA 用來指定主機名(或域名)對應的 IPv6 地址(例如:ff06:0:0:0:0:0:0:c3)記錄。
SRV 記錄了哪台電腦提供了哪個服務。格式為:服務的名字、點、協議的類型,例如:_xmpp-server_tcp。
顯性 URL 從一個地址 301 重定向到另一個地址的時候,就需要添加顯性 URL 記錄(註:DNSPod 目前只支援 301 重定向)。
隱性 URL 類似於顯性 URL,區別在於隱性 URL 不會改變地址欄的域名。

這時候你的項目根目錄應該會出現一個名為CNAME的文件。如果沒有的話,打開部落格/source目錄,我的是G:/hexo-blog/blog-demo/source,新建CNAME文件,注意沒有後綴。然後在裡面寫上你的域名(例如:tzy1997.com),保存。最後運行hexo ghexo d上傳到github。這樣到最後當你在地址欄輸入xxx.github.io時,才會自動跳轉到你的域名。

打開你的github部落格項目,點擊settings,點擊Pages,拉到下面Custom domain處,填上你自己的域名 ,保存。

在這裡插入圖片描述

部署成功後,再打開你的瀏覽器,輸入你自己的專屬域名,即可看到你的部落格網站!