基於 Hexo 從零開始搭建個人部落格(二)
- 2022 年 7 月 14 日
- 筆記
- hexo + butterfly
閱讀本篇前,請先配置好相應的環境,請仔細閱讀教程 基於 Hexo 從零開始搭建個人部落格(一)。
前言
- 部落格搭建過程遇到任何問題,優先在本頁面搜索,檢查是否已經有該配置教程。
- 遇到問題可以優先在文章評論區留言,注意留言時請填寫正確的郵箱以確保能收到站長的回復。
- 實在解決不了的問題可添加站長 Wechat ,添加好友時請備註自己的姓名+專業,如 張三 電腦科學與技術。
初始化 Hexo 項目
- 在目標路徑(我這裡選的路徑為【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.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 g
、hexo d
上傳到github
。這樣到最後當你在地址欄輸入xxx.github.io
時,才會自動跳轉到你的域名。
打開你的github
部落格項目,點擊settings
,點擊Pages
,拉到下面Custom domain
處,填上你自己的域名 ,保存。
部署成功後,再打開你的瀏覽器,輸入你自己的專屬域名,即可看到你的部落格網站!