Hexo 搭建博客-基礎(chǔ)配置篇

前言

建博客的想法緣來已久,絕非一天兩天了疚俱。
名博阮一峰曾經(jīng)說過:

喜歡寫B(tài)log的人劝术,會經(jīng)歷三個階段。

  • 第一階段呆奕,剛接觸Blog养晋,覺得很新鮮,試著選擇一個免費(fèi)空間來寫梁钾。
  • 第二階段绳泉,發(fā)現(xiàn)免費(fèi)空間限制太多,就自己購買域名和空間姆泻,搭建獨(dú)立博客零酪。
  • 第三階段冒嫡,覺得獨(dú)立博客的管理太麻煩,最好在保留控制權(quán)的前提下四苇,讓別人來管孝凌,自己只負(fù)責(zé)寫文章。

實(shí)際上月腋,內(nèi)容的輸出才是Blog的核心與王道蟀架。在如今渠道如此豐富的業(yè)態(tài)之下,其實(shí)有一方土地給自己一些慰藉也是好的榆骚,正如我喜歡記筆記片拍,但是又閑自己的字寫得難看一樣。希望拜托了書寫困境的我在輸出和記錄的道路上一路順利妓肢,我也很高興與認(rèn)識的不認(rèn)識的朋友分享點(diǎn)滴捌省。

小提示(我走的彎路):

  1. 所有標(biāo)點(diǎn)符號都是英文的,所以輸入時請切換到英文狀態(tài)职恳。
  2. 冒號后面一定要有個空格,否則回報(bào)錯所禀。
  3. 所有文件(不管是以md為后綴的方面,還是以yml結(jié)尾的)放钦,都必須轉(zhuǎn)換成UTF-8格式,可以在notepad++的格式里轉(zhuǎn)換下恭金,否則在本地查看(localhost:4000)中會出現(xiàn)亂碼操禀。
  4. 文件夾選項(xiàng)中要勾選“顯示隱藏的文件”,而下面的“隱藏已知文件類型的擴(kuò)展名”則不要勾選横腿。
  5. 最新版Hexo(3.0.0或以上版本)默認(rèn)未安裝hexo-deployer-git插件颓屑,即部署(上傳)到gitcafe或github要用的插件,所以如果不安裝這個插件耿焊,就要報(bào)錯揪惦。
  6. Git Bash右鍵點(diǎn)擊左上角的圖標(biāo),選擇屬性罗侯,右側(cè)編輯選項(xiàng)中“快速編輯模式”打勾器腋,這是為了在Git Bash中點(diǎn)擊右鍵就能粘貼。
  7. 不建議用默認(rèn)hexo主題钩杰,建議在網(wǎng)上找個其他主題纫塌,不僅因?yàn)楹每矗€因?yàn)槠渌黝}往往集成了多說讲弄、支持中文簡體等優(yōu)勢措左,省去了你自己折騰的時間。

Hexo簡介


** 什么是Hexo避除?**

Hexo是一款基于Node.js的靜態(tài)博客生成程序怎披,作者是臺灣的tommy351胸嘁。

tommy351對Hexo的介紹:

  • 超快速度 Node.js 所帶來的超快生成速度,讓上百個頁面在幾秒內(nèi)瞬間完成渲染凉逛。
  • 支持 Markdown Hexo 支持 GitHub Flavored Markdown 的所有功能缴渊,甚至可以整合 Octopress 的大多數(shù)插件。
  • 一鍵部署 只需一條指令即可部署到 GitHub Pages, Heroku 或其他網(wǎng)站鱼炒。
  • 豐富的插件 Hexo 擁有強(qiáng)大的插件系統(tǒng)衔沼,安裝插件可以讓 Hexo 支持 Jade, CoffeeScript。

** 為什么用Hexo昔瞧? **

  • 免費(fèi)

    可以部署到GitHub指蚁、GitCafe、七牛自晰,都是完全免費(fèi)的凝化。

  • 簡單

    比部署WordPress要簡單得多,只需要簡單幾部就能搭建好環(huán)境酬荞,僅需要記住幾條簡短的命令搓劫、簡單的Markdown語法,即可寫出精彩的文章混巧。

  • 穩(wěn)定

    再也不用去操心主機(jī)的運(yùn)維了枪向。

  • 快速

同時部署到GitHub、GitCafe咧党、七牛秘蛔,在全球都可獲得優(yōu)秀的訪問速度。

Hexo:安裝和配置


{% alert success %}這部分主要介紹Hexo如何安裝傍衡、使用深员,以及配置文件。{% endalert %}

運(yùn)行環(huán)境準(zhǔn)備

本系列文章以Hexo 3.0.0為例蛙埂,操作系統(tǒng)為Windows 8.1 Pro VL x64 倦畅。

首先需要安裝以下程序:

  • Node.js
    下載最新版的 Node.js,一路next安裝到C盤绣的。

  • Git
    如果是Windows平臺叠赐,則下載msysgit,安裝建議勾選Git Bash Here被辑,方便以后的操作燎悍,然后一路next即可。

  • Atom盼理、Notepad++ (可選)
    文本編輯器谈山,用于修改配置文件及寫文章。

安裝Hexo

  1. 新建一個文件夾宏怔,例如blog 奏路。
  2. 進(jìn)入blog文件夾畴椰,右鍵點(diǎn)擊Git Bash Here
  3. 安裝Hexo
    輸入代碼
$ npm install hexo-cli -g
  1. 初始化blog文件夾
$ hexo init
  1. 安裝依賴和插件
$ npm install
  1. 啟動服務(wù)器進(jìn)行本地預(yù)覽
$ hexo s
  1. 當(dāng)看到INFO Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.時就說明我們已經(jīng)搭建起本地的hexo博客了鸽粉,
    在瀏覽器中打開 http://localhost:4000 注意:不要打開提示的0.0.0.0:4000斜脂。, 成功的話即可看到博客頁面触机,至此安裝就完成了帚戳。

  2. 然后回到命令窗口按Ctrl+C停止服務(wù)(有時要按兩次Ctrl+C,因?yàn)橛袝rGit Bash認(rèn)為當(dāng)前在進(jìn)行復(fù)制操作)儡首,直到出現(xiàn) “$”標(biāo)志就結(jié)束了片任。 然后關(guān)閉Git Bash.
    然后回到命令窗口按Ctrl+C停止服務(wù)(有時要按兩次Ctrl+C,因?yàn)橛袝rGit Bash認(rèn)為當(dāng)前在進(jìn)行復(fù)制操作)蔬胯,直到出現(xiàn) “$”標(biāo)志就結(jié)束了对供。
    然后關(guān)閉Git Bash.

  3. 安裝插件

npm install hexo-deployer-git --save'''

#### 常用命令
Hexo的命令極簡單,安裝后只需要記住四個常用的即可氛濒。執(zhí)行命令需要Git當(dāng)前處于blog文件夾根目錄下产场。

* generate 生成靜態(tài)文件。

hexo g

* server 啟動服務(wù)器舞竿。

hexo s

* deploy 部署網(wǎng)站京景。部署網(wǎng)站前,需要預(yù)先生成靜態(tài)文件炬灭。

hexo d

* clean 清除緩存文件 (db.json) 和已生成的靜態(tài)文件 (public)醋粟。

hexo clean

#### 其他
* Q:如何卸載Hexo靡菇?   
A:3.0.0版本執(zhí)行`$ npm uninstall hexo-cli -g`重归,之前版本執(zhí)行`$ npm uninstall hexo -g`。
* Q:如何安裝舊版本Hexo厦凤?    
  A:先卸載當(dāng)前版本鼻吮,以2.8.3為例,執(zhí)行`npm install hexo@2.8.3 -g`较鼓,再初始化并安裝依賴和插件椎木。

### 配置gitcafe
---------
>注意:以下假設(shè)你的gitcafe賬號或者用戶名是:`hello`,你的郵箱為:`hello@gmail.com`博烂,密碼為`hello123`


----------


到 [https://gitcafe.com][6] 注冊個賬號香椎,然后創(chuàng)建項(xiàng)目,右上角的那個圖標(biāo)可以新建項(xiàng)目禽篱,右側(cè)也有“新建”字樣畜伐。
凡是選填的可以不填,其他默認(rèn)躺率。


>**注意:項(xiàng)目名需要與你的用戶名相同玛界,還有就是要選擇“公開項(xiàng)目”万矾。**

下圖是別人的圖片,雖然用戶名(項(xiàng)目名)不是hello慎框,但實(shí)際操作時注意項(xiàng)目名稱要和注冊ID一樣良狈,項(xiàng)目主頁可以不填。
![gitcaf項(xiàng)目][7]


### 配置SSH公鑰
首先我們需要檢查你電腦上現(xiàn)有的ssh key:

``` bash
cd ~/.ssh

如果提示:No such file or directory 說明你是第一次使用git笨枯。

生成新的SSH Key

ssh-keygen -t rsa -C "hello@gmail.com"

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<回車就好>

出現(xiàn)


sshkeygen
sshkeygen

然后系統(tǒng)會要你輸入密碼:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

這個設(shè)置是防止別人往你的項(xiàng)目里提交內(nèi)容薪丁,我直接回車。

看到入下圖所示后馅精,SSH key就生成成功了窥突。


sshkeyok
sshkeyok

然后你可以去開始,打開你的用戶目錄硫嘶,有一個“.ssh”文件夾阻问,里面有
“id_rsa” “id_rsa.pub” 和 “known_hosts”這三個文件。

ssh文件
ssh文件

其中“id_rsa”是你的私鑰文件沦疾,“id_rsa.pub”是你的公鑰文件称近,一會兒要用。
接下來下載notepad++ 文本編輯器哮塞,比windows自帶的記事本更強(qiáng)大刨秆,這里我們主要用它來打開id_rsa.pub文件。
這是他的官網(wǎng):notepad++官網(wǎng)
下載后忆畅,直接把“id_rsa.pub”文件拖進(jìn)notepad++中衡未,然后復(fù)制里面的所有內(nèi)容到剪貼板。

添加SSH Key到Gitcafe

然后去GitCafe家凯,點(diǎn)擊右上角的那個圖標(biāo)缓醋,選擇賬戶設(shè)置,左側(cè)SSH公鑰管理绊诲,添加新的公鑰送粱,在名稱文本框中輸入任意字符,在公鑰文本框粘貼剛才復(fù)制的公鑰字符串全部內(nèi)容(包括結(jié)尾的郵箱)掂之,輸入GitCafe賬戶密碼抗俄,按保存按鈕完成操作。


這樣我們本地就和GitCafe服務(wù)端連接上了世舰。

測試是否可以連接GitCafe服務(wù)器

在桌面上雙擊打開Git Bash动雹,輸入:

ssh -T git@gitcafe.com

如果是第一次連接的話,會出現(xiàn):

The authenticity of host 'gitcafe.com (50.116.2.223)' can't be established.
#RSA key fingerprint is 84:9e:c9:8e:7f:36:28:08:7e:13:bf:43:12:74:11:4e.
#Are you sure you want to continue connecting (yes/no)?

直接輸入yes回車,然后會提示你輸入 passphrase 口令:

Enter passphrase for key ‘/c/Users/USERNAME/.ssh/id_rsa’:

剛才我們根本就沒設(shè)置跟压,所以這次也直接回車,當(dāng)看到

Hi starsky! You've successfully authenticated, but GitCafe does not provide shell access.

我們就連接成功了胰蝠。


設(shè)置用戶信息

# 設(shè)置你的用戶名
git config --global user.name "hello"  
# 設(shè)置你的郵箱
git config --global user.email "hello@gmail.com"

到此為止,SSH Key配置成功,本機(jī)已成功連接到gitcafe.
就差最后一步了姊氓,把博客部署到gitcafe.

修改hexo配置文件

在 Hexo 文件夾下找到 _config.yml 文件丐怯,并拖到notepad++ 打開。



找到其中的 deploy 標(biāo)簽翔横,改成下圖所示读跷,并保存:

deploy:
  type: git
  repository: https://gitcafe.com/hello/hello.git
  branch: gitcafe-pages

注意:除了 “https://” 中的冒號以外,其他每個冒號后面都有個空格,最后保存禾唁。

把hexo博客部署到gitcafe

注意:以下假設(shè)你注冊gitcafe時使用的密碼是hello123

打開我的電腦效览,進(jìn)入D盤的hexo目錄,在該目錄內(nèi)右鍵荡短,選擇Git Bash丐枉,打開后看到Git Bash標(biāo)題欄的路徑為/D/hexo.

注意:以后我們很多的博客操作都要在此目錄下運(yùn)行Git Bash才行,比如新建博文掘托、上傳部署等等瘦锹。

輸入:

hexo d

運(yùn)行中要輸入你的用戶名:輸入hello,回車闪盔,然后要輸入密碼弯院,輸入hello123(這時當(dāng)你輸入時,你會發(fā)現(xiàn)輸入之后密碼是不顯示的泪掀,也不顯示星號听绳,這是為了安全,并非是你沒輸上)异赫,回車后顯示Deploy done等等就成功部署上了椅挣!如圖:

如果出錯改成下面的代碼試一下:

deploy:
  type: git
  repository: git@gitcafe.com:hello/hello.git
  branch: gitcafe-pages

每次deploy時不輸入郵箱和密碼

如果覺得每次部署的時候都要輸入用戶名和密碼,可以這樣解決:開始塔拳,到你的用戶目錄下新建一個_netrc文件鼠证。
我的操作:可以直接復(fù)制一個.gitconfig文件復(fù)件,然后改名為_netrc蝙斜,注意:n前面有個下劃線名惩。
然后把_netrc文件拖入notepad++ 里,輸入:

machine gitcafe.com
login hello
password hello123

孕荠,這樣每次部署的時候就不用輸入用戶名和密碼了。
來源:
把Hexo同時部署到GitHub和GitCafe
Git push時重復(fù)輸入用戶名密碼的問題

大功告成 :)

這時你就成功把hexo博客部署到了gitcafe上攻谁,快打開 http://hello.gitcafe.io/ 看看吧稚伍!

最后的最后,別忘了最最重要的一件事戚宦,現(xiàn)在个曙,跟著我一起做,閉上雙眼,雙手合十垦搬,心里默念:感謝GitCafe:舸纭!猴贰!

其他問題

問題集1:

  1. 有網(wǎng)友反應(yīng)右鍵菜單中沒有g(shù)it bash選項(xiàng)对雪,可以進(jìn)入開始菜單找到git bash,然后通過cd進(jìn)入相應(yīng)目錄執(zhí)行命令米绕。
  1. 在github部署完成之后瑟捣,馬上訪問可能出現(xiàn)404錯誤,這是正常的栅干,(最多)等待十分鐘左右就可以訪問了迈套。如果還不行,那很可能是 github 發(fā)送給你的驗(yàn)證郵件你沒有打開看碱鳞,據(jù)多方反映桑李,驗(yàn)證后就沒問題了。
  2. 如果在hexo d之后出現(xiàn)fatal: 'username.github.io' does not appear to be a git repository窿给,一是檢查 repo 的名字是否合乎規(guī)范芙扎、是否含有大寫字母、config.yml 中的 deploy 配置是否正確填大,二是把 git bash 關(guān)掉戒洼,重新打開再執(zhí)行命令。
  3. 有的同學(xué)可能不是 IT 界的允华,或者對shell 命令不太了解圈浇。在要求輸入密碼時,你輸入之后密碼是不顯示的靴寂,這是為了安全磷蜀,并非是你沒輸上。
  4. 出現(xiàn)亂碼的百炬,不要使用 windows 中的「記事本」打開并編輯文件褐隆,推薦使用 sublime text,很簡單剖踊。如果已經(jīng)在「記事本」中編輯過庶弃,需要使用 sublime text 轉(zhuǎn)碼為「utf8」。
  5. 安裝 hexo 時卡在那兒不動德澈,很可能是網(wǎng)絡(luò)不給力歇攻,能全局 break wall 就好了。
  6. 遇到什么其他的問題梆造,不妨刪除.deploy 和db.json 再重新生成試一試缴守。

來源:hexo系列教程:(二)搭建hexo博客

問題集2:

1.安裝NoteJs,出現(xiàn)問題,安裝到最后提示error 52**
過程:重新下載安裝了幾次都不行屡穗,不懂為什么贴捡,最后通過Hexo的文檔提供下載地址進(jìn)行下載,然后安裝問題就沒有出現(xiàn)了村砂。 可能原因:
a.下載的安裝包有問題的原因
b.我的C盤占用過多烂斋,盤符標(biāo)紅,然后卸載一些不常用軟件解決箍镜,再安裝再加上上面重新下載的安裝包源祈,之后安裝成功。

2.部署提示找不到git
解決辦法: 在Hexo 3.0版本后deploy git 被分開的色迂,所以需要安裝香缺,安裝命令如下:npm install hexo-deployer-git --save ,安裝好后在嘗試一下就ok。

3.部署提示 `event type error ***`
解決辦法:
安裝了git bash沒有配置到環(huán)境變量path中歇僧,添加進(jìn)去在試試图张。

4.部署的時候執(zhí)行:hexo deploy 命令行沒有任何輸出,也沒有錯誤诈悍。
解決辦法:
在部署的_config.yml文件中祸轮,找到deploy:標(biāo)簽,在每個冒號后面必須要空格侥钳,否則就會出現(xiàn)上述問題适袜。我的配置如下:
deploy:
type: git
repository: https://github.com/wx962464/wx962464.github.io.git
branch: master
順便提示下,如果使用ssh部署不成功的話舷夺,請使用https的方式試試苦酱,這個就是每次會讓你輸入用戶名和密碼。其實(shí)效果是一樣的给猾。

5.修改主題不起作用疫萤,而且hexo generate還報(bào)錯
解決辦法:
需要到相應(yīng)的主題文件夾下面進(jìn)行修改,比如我的主題為:themes\jacman 則在根目錄下找到該文件夾下敢伸,修改_config.yml文件扯饶,根目錄下面也有個同樣的名字,不注意池颈,容易弄混尾序,要主要修改的文件是否正確。

6.執(zhí)行hexo server顯示running at http://0.0.0.0:4000/

問題說明:
開始的時候以為啟動服務(wù)器有問題饶辙,一直在找問題蹲诀,找了半天沒有答案,最后在瀏覽器直接嘗試http://0.0.0.0:4000/ 是沒辦法訪問的弃揽,然后就試了下http://localhost:4000/ 發(fā)現(xiàn)是可以訪問的,大喜!~~

7.執(zhí)行hexo server提示找不到該指令
解決辦法:
在Hexo 3.0 后server被單獨(dú)出來了矿微,需要安裝server痕慢,安裝的命令如下:npm install hexo-server --save 安裝此server后再試,問題解決涌矢。

8.以上就是我在這幾天使用Hexo的一些問題掖举,當(dāng)然問題列的不夠詳細(xì),只是一個大致思路娜庇,這些也是憑著自己的印象做的筆記塔次,所以有些錯誤的地方希望大家指出,共同學(xué)習(xí)名秀,共同進(jìn)步励负!

來源:Hexo 使用中遇到的問題總結(jié)


參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市匕得,隨后出現(xiàn)的幾起案子继榆,更是在濱河造成了極大的恐慌,老刑警劉巖汁掠,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件略吨,死亡現(xiàn)場離奇詭異,居然都是意外死亡考阱,警方通過查閱死者的電腦和手機(jī)翠忠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乞榨,“玉大人秽之,你說我怎么就攤上這事〗啵” “怎么了政溃?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長态秧。 經(jīng)常有香客問我董虱,道長,這世上最難降的妖魔是什么申鱼? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任愤诱,我火速辦了婚禮,結(jié)果婚禮上捐友,老公的妹妹穿的比我還像新娘淫半。我一直安慰自己,他們只是感情好匣砖,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布科吭。 她就那樣靜靜地躺著昏滴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪对人。 梳的紋絲不亂的頭發(fā)上谣殊,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天,我揣著相機(jī)與錄音牺弄,去河邊找鬼姻几。 笑死,一個胖子當(dāng)著我的面吹牛势告,可吹牛的內(nèi)容都是我干的蛇捌。 我是一名探鬼主播,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼咱台,長吁一口氣:“原來是場噩夢啊……” “哼络拌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起吵护,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤盒音,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后馅而,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體祥诽,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年瓮恭,在試婚紗的時候發(fā)現(xiàn)自己被綠了疚膊。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片炮障。...
    茶點(diǎn)故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出晴玖,到底是詐尸還是另有隱情甥捺,我是刑警寧澤淹辞,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布牛隅,位于F島的核電站,受9級特大地震影響脑蠕,放射性物質(zhì)發(fā)生泄漏购撼。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一谴仙、第九天 我趴在偏房一處隱蔽的房頂上張望迂求。 院中可真熱鬧,春花似錦晃跺、人聲如沸揩局。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凌盯。三九已至付枫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間十气,已是汗流浹背励背。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工春霍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留砸西,地道東北人。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓址儒,卻偏偏與公主長得像芹枷,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子莲趣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容