1. 程式人生 > >Hexo+Netlify快速搭建個人部落格

Hexo+Netlify快速搭建個人部落格

最近想要給自己搭建一個部落格網站,貨比三家後,決定選擇Hexo.io來建站,Netlify來進行程式碼託管和部署。

長話長說,在轉行寫前端之前,我曾做過一段時間網站內容編輯,當時主要使用的是Wordpress。作為傳統動態網站生成器的代表,Wordpress擁有超高市場佔有率,很多大型出版媒體的網站都是基於Wordpress。對於非技術人員來說,其內容撰寫及維護門檻較低。但和任何傳統動態網站生成器一樣,對於輕量級小建站平臺,Wordpress顯得過分臃腫。過時的外掛容易被黑客攻擊,形成安全漏洞。由於需要頻繁訪問資料庫,其速度難以保證。

於是乎,近年來如日中天的靜態網站生成器成了替代方案。對於靠寫程式碼吃飯的程式猿朋友們來說,在保留Git工作流程基礎上,利用Markdown來撰寫部落格內容相比之通過內容管理系統的使用者介面來建立內容要方便高效很多。

什麼是靜態網站生成器?具體優勢為何?

一個靜態網站生成器的工作流程通常有以下幾個步驟:

讀取原始檔(e.g. 約定 markdown 格式)

資源預處理

模板引擎渲染

生成目標檔案

和傳統動態網站生成器相比,靜態網站生成器的主要優勢體現在:

- 響應速度:靜態部落格站點頁面都是靜態頁面,訪問時無需查詢資料庫,因此響應速度相對快很多

- 安全性:同樣由於不需要訪問資料庫,靜態網站免疫了很多網頁攻擊,其安全性令動態網站生成器望塵莫及

最受歡迎的靜態網站生成器有Jekyll, Hugo, Gatsby,以及我們今天的主角Hexo等。詳見StaticGen瞭解最新權威排名。

什麼是Hexo?

Hexo是一款基於Node.js的靜態部落格網站生成器,由臺灣的Tommy Chen建立並維護。其卓越的速度,豐富的外掛系統(支援大部分Octopress外掛),友好的語言支援(擁有簡體中文及繁體中文版本的文件),使其備受國內使用者親賴。

安裝Hexo的準備工作

在開始安裝Hexo前,請確保你的本地環境已安裝如下應用程式:

- Git

- Node.js

安裝Hexo

開啟終端,輸入npm命令安裝Hexo:

$ npm install -g hexo-cli

安裝完成後,輸入以下指令建立專案資料夾路徑:

$ hexo init /PATH/TO/hexo

切換至剛剛建立的資料夾:

$ cd /PATH/TO/hexo

建站

安裝Hexo會在你所制定的資料夾裡安裝必要元件,以提供給你一個基本的網站雛形。通過npm來操作完成Hexo初始化:

$ npm install

恭喜你!網站雛形已建成!啟動hexo伺服器來預覽你的成果:

$ hexo server

這麼簡單?沒錯,就是那麼簡單。

當然,別忘了給你的網站新增文章內容。

新建部落格文章,只需執行以下指令:

$ hexo new "我的最新日誌"

你會發現在你的資料夾_posts下已生成了一個新的md文件,其中已包含了文章的標題和建立日期

---
title: 我的最新日誌
date: 2018-07-03 11:54:41
tags:
---

下一步,生成靜態檔案:

$ hexo generate

如果你的hexo伺服器還在執行中的話,重新整理網頁,便可看到你新建立的部落格文章!

網站釋出前準備工作

新增完網站內容後,我們接下來來看如何釋出網站。

有一個細節值得一提,在預設情況下,Hexo將生成的網站內容儲存至public資料夾。鑑於我們不需要對該資料夾的內容進行版本控制,我們可將該資料夾新增至.gitignore文件中:

$ echo "/public" >> .gitignore

接下來便可將你的內容推送至你習慣使用的程式碼託管服務,以GitHub和GitLab為代表。我們會以GitHub為例來進行步驟講解。

新建倉庫

首先,在GitHub上新建倉庫。為了避免出錯,在新建倉庫時,請不要在建立Initialize this repository with a README前打勾,Add .gitignore和Add a license處請選擇None。

鑑於我們的demo基於Hexo和Netlify,在Repository name處填寫hexo_netlify來命名倉庫。

開啟你的電腦終端,切換至你的專案所在的本地資料夾路徑:

$ cd ~/PATH/TO/hexo_netlify/

初始化倉庫

$ git init

該命令將建立一個名為.git的子目錄,其中包含了你初始化的Git倉庫中所需的檔案,這些檔案是Git倉庫的核心。此時,我們僅作了一個初始化的操作,你的專案檔案還未被跟蹤。

通過git add 來實現對指定檔案的跟蹤,然後執行git commit提交:

$ git add .
$ git commit -m "initial commit"

回到之前我們建立GitHub倉庫完成的頁面,複製遠端倉庫連結,在終端輸入:

$ git remote add origin <遠端倉庫連結>

你可以通過git remote -v來驗證你的連結是否正確。

驗證完畢,確認準確無誤後,用以下指令推送本地倉庫內容至GitHub

$ git push origin master

現在,你的原始碼已被成功上傳至GitHub,接下來我們可以通過Netlify來發佈網站。

為什麼選擇Netlify來發佈網站?Netlfily和GitHub Pages有什麼區別?

轉身嘗試了下Netlify,感覺如獲至寶。如文章所言, Netlify的Continuous Deployment持續部署功能使其鶴立雞群(後面具體講述部署過程的時候會有更詳細解釋)。且Netlify支援大部分靜態網站生成器(Github Pages僅支援Jekyll)。此外,GitHub Pages對redirects,重定向(也稱URL轉發)支援並不友好,如果你哪天改變主義,不再需要GitHub Pages所提供的*.github.io子域名,那你可有得麻煩了。相形之下,你可以輕鬆簡單得從*.netlify.com重定向至你的新地址(Netlify 的重定向編碼是301或302),這樣一來,搜尋引擎可以清楚識別你的頁面已被轉移,從而對你的新頁面進行重新排名。所以即使哪天Netlify車毀人亡,只要設定好了重定向,你的網站便不會受到任何影響。

釋出網站

1. 新增網站內容

首先,你需要註冊一個Netlify賬號,Netlify提供郵箱註冊和包括GitHub在內的第三方驗證登陸。註冊過程和一般網站註冊過程大同小異,你會收到一封來自Netlify的郵件,確認你的註冊資訊,點選郵件中的連結登陸你的賬戶。

2. 關聯GitHub賬戶

登陸後,在 https://app.netlify.com/account/sites 頁面下,點選New site from Git進入下一步。

點選GitHub關聯Netlify和你的倉庫

3. 授權驗證

首次關聯時,你會看到以下視窗,點選Authorize netlify同意授權後,Netlify可以有權訪問你在GitHub上的倉庫內容了

4. 選擇倉庫

授權完畢後,頁面會跳轉回Netlify。通過搜尋欄來快速找到你所建立的hexo_netlify倉庫,選中該倉庫。

5. 配置釋出設定

Netlify允許你自定義你的部署設定,我們的demo只需使用預設設定即可。

6. 構建併發佈網站

此時此刻,萬事具備,只欠東風。

點選完Deploy site之後,Netlify會構建併發布你的網站內容。你可以放心得伸個懶腰,泡杯咖啡,剩下的就交給Netlify處理。你可以通過Deploy log實時觀察部署過程。

進行到這一步,Netlify的主要特色終於得以浮出水面。我們知道,任何超過一個人的專案都需要經歷以下過程:某a分支的內容需要通過pull request進行稽核,稽核完後合併到主分支。Netlify支援分支部署( branch deployment )和部署預覽( deploy preview ),也就是說,你可以在不觸及production code的情況下,預覽你的成果。這兩樣功能大大提高了團隊合作效率,降低了釋出風險和成本。

7. 釋出成功

不到一杯茶的時間,網站上線。Netlify會在網站釋出成功的同時提供給你一個*.netlify.com為字尾以及隨機生成的英文名為字首的子域名。假如你不喜歡Netlify給你的字首,並且還未來得及購買域名,可以通過Domain settings > Edit site name來快速美化你的網址:

上線!撒花!

在建站過程中,你可能最常需要用到以下指令:

hexo n #新增新內容
hexo g #生成靜態檔案
hexo d #部署 #可與hexo g合併為 hexo d -g
hexo s == hexo server #啟動服務預覽

遺憾的是,和GitHub一樣,Netlify沒有中文版!不過好整個建站過程總體很順暢,沒有遇到任何障礙。

希望這篇文章能對有興趣的童鞋有所幫助,有任何問題,建議,想法,質疑,歡迎留言或郵件交流。

相關推薦

Hexo+Netlify快速搭建個人部落

最近想要給自己搭建一個部落格網站,貨比三家後,決定選擇Hexo.io來建站,Netlify來進行程式碼託管和部署。 長話長說,在轉行寫前端之前,我曾做過一段時間網站內容編輯,當時主要使用的是Wordpress。作為傳統動態網站生成器的代表,Wordpress擁有超高市場

從零開始 利用hexo在github上快速搭建個人部落

利用hexo在github上快速搭建個人部落格方案選型主流的三種部落格搭建方案:1. Git+Github+Markdown+jekyll (免費) 2. Git+Github+Markdown+hexo (免費) 3. 虛擬主機+外掛+Wordpress (付費)123我的選擇: Git+Github+Ma

基於 Hexo + GitHub Pages 搭建個人部落

參考 markdown一些語法 1、 --- title: Hello Blog --- 2、連結[CSDN](https://blog.csdn.net/owenfy) 3、大小標題 ## Quick Start ### Create a new post 4、中間

使用Hexo + GitHub Pages 搭建個人部落

一.前言   之前是在CSDN上寫部落格的,但是無奈其廣告滿天飛,還有因為個人不太喜歡CSDN部落格裡的一些東西,加上看到很多技術大牛都有自己的個人部落格,於是乎!便想著搭建一個自己的個人部落格。其實之前寫部落格還是追求於有很多人來看,以滿足自己這樣的一個慾望,後來慢慢覺得寫部落格無非是記錄一下自己成長的歷

Docker快速搭建個人部落網站(wordpress+mysql)

1、基本知識 本著“容器只幹一件事情”的原則,本文會將出現兩個容器,一個Wordpress的網站程式的容器,另一個則是MySQL的資料庫容器,從中將看到兩個容器是如何協同工作的。本文的命令操作具體可見Docker入門。 2、啟動MySQL容器 do

Hexo + Github 之搭建個人部落

什麼是 Hexo? Hexo 是一個快速、簡潔且高效的部落格框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在幾秒內,即可利用靚麗的主題生成靜態網頁。hexo中文官網地址 https://hexo.io/zh-cn/ Git安裝 nodeJ

使用Hexo + GitHub Pages搭建個人部落

--- title: github pages+hexo搭建部落格 date: 2017-09-20 10:39:20 tags: ["技術","學習",'部落格'] --- Web 前端愛好者。寫部落格的好處,不是為了寫而寫,而是一個記錄思想的過程。不要考慮它能帶給你什麼,而是你自己從中收穫了什麼。 最近

使用hexo+yilia+github搭建個人部落

經過幾天的折騰,終於配成功了,現記錄如下,本人是在win7上搭建個人部落格的。 直奔主題,搭建個人部落格主要分為以下幾步: * 先檢視效果(本人搭建的部落格) * 本地環境搭建(win7) * 安裝hexo * 主題切換 * SSH配置 *

Hexo + GitHub +Win10 搭建個人部落

終於搭建起了自己的第一個部落格,在這裡記錄一下我這個小白的建站過程~~ 首先,肯定要看一看Hexo的官網,看看官網文件建議怎麼搞

利用GitHub Pages + jekyll快速搭建個人部落

前言 想搭建自己部落格很久了(雖然搭了也不見得能產出多頻繁)。 最初萌生想寫自己部落格的想法,想象中,是自己一行一行碼出來的成品,對眾多快速構建+模板式搭建不屑一顧,也是那段時間給閒的,從前後端選型、資料庫敲定,到實際程式碼編寫,越寫越發現自己要弄的東西太多太多,而且,沒有模板,沒有原型,當初我的審美還是很欠

從零到一快速搭建個人部落網站(域名備案 + https免費證書)(一)

## 前言        為什麼選擇搭建個人部落格?一方面是各個平臺經常下架原創文章,另一個方面是為了熟悉整個建站流程。        通過搭建個人部落格,我們可以自由的

使用Hexo搭建個人部落,極速高效簡潔,新手小白可操作

目錄 只需要兩步 第一步程式碼部分: 第二部分放置程式碼 https://www.cnblogs.com/blogjun/articles/8289977.html 詳細操作可參考上文 這裡說一下大概的原理吧(純屬個人觀點,如有疑問請評論回去,接懟) 只需要兩步

使用Hexo+Github搭建個人部落

個人部落格:             技術部落格:http://messi1002.top/             閱讀部落格:http://www.read1002.t

Hexo + github pages + 阿里雲繫結域名搭建個人部落

申請域名 萬網購買的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制檯進行解析 控制檯->域名與網站(萬網)->域名->域名列表->解析 設定主機記錄www

github + hexo 搭建個人部落教程

Github Pages介紹 本來用於介紹託管在Github上上的專案,由於它的空間免費穩定,因此適合用來搭建部落格。 每個帳號只能有一個倉庫來存放個人主頁,且倉庫的名字必須是使用者名稱/ username.github.io。你可以通過http://username.github.io

GitHub、Node.js和Hexo搭建個人部落

GitHub、Node.js和Hexo搭建個人部落格 1.Git 1.1、下載 下載地址:https://git-scm.com/downloads 1.2、Git安裝 雙擊安裝,點選Next 填寫安裝路徑,點選Next 選中安裝內容,點選Next

Mac上基於hexo+GitHub搭建個人部落(一)

之前一直使用部落格園和簡書,但是部落格園太複雜,而簡書雖然很簡單,但是沒什麼新鮮感,偶然得知hexo+github可以搭建自己的部落格,主要是可以自己定主題,還很simple,因此,找了個時間,自己搞了一下,感覺還可以,就自己弄了一個。 1 環境配置 Hexo官網上有搭建文件! 1.1 安

Github Pages + Hexo 搭建個人部落

本文原地址 開始前瞭解了自己適合那種方式搭建個人部落格的幾種高效方案 一、前置知識 GitHub Github 官網 廖雪峰教程- Git 教程 個人 Git 筆記 二、開始搭建 阮一峰教程-搭建一個免費的,無限流量的 Blog---- githu

github搭建個人部落 hexo d無效

在github上搭建個人部落格,hexo已經部署完畢,本地訪問也沒有問題,但最後hexo d就是push不上去 檢查了deploy,看不出有什麼問題,後面百度了一下,發現有個巨坑,type: git中間必須有個空格!!!! deploy:   type: git   reposit

Mac下Hexo+GitHub搭建個人部落

Mac下Hexo+GitHub搭建個人部落格 環境搭建 Node和Git安裝完成後,在終端下輸入下面的命令: sudo npm install -g hexo 初始化hexo 在使用者目錄下建立名為hexo的資料夾 mkdir hexo 然後cd到此目錄下