我的博客是如何搭建的(github pages + HEXO + 域名綁定)

博客搭建好之后盒粮,貌似很久沒(méi)有寫文章了鸵鸥,現(xiàn)在就來(lái)分享一下我搭建博客的艱苦行程和一些莫名其妙的坑。

ps:本博客是在MAC環(huán)境下進(jìn)行搭建的丹皱,并且對(duì)github pages和一些shell腳本知識(shí)有所了解妒穴。

警告警告:

由于xiaopingblog.cn這個(gè)域名沒(méi)續(xù)費(fèi),已經(jīng)被人整成視頻網(wǎng)站了摊崭,請(qǐng)?jiān)L問(wèn)我的github原始地址讼油。http://biggercoffee.github.io,如果之前有訪問(wèn)過(guò)'xiaopingblog.cn'這個(gè)域名呢簸,那么訪問(wèn)'http://biggercoffee.github.io'的時(shí)候會(huì)自動(dòng)跳轉(zhuǎn)到'視頻網(wǎng)站'里矮台,清理一下緩存即可。

首先簡(jiǎn)單描述一下搭建的大體流程吧(其實(shí)挺簡(jiǎn)單的根时,只是體力活費(fèi)時(shí)而已):

  1. 擁有一個(gè)github pages
  2. 在本地電腦里配置hexo的環(huán)境瘦赫。( hexogithub pages綁定,寫博文修改博文等蛤迎,生成靜態(tài)博客并push to github确虱。)
  3. 綁定自己的域名(也可以不用綁定,github pages有二級(jí)域名替裆,只不過(guò)綁定了一個(gè)屬于自己的域名更有逼格點(diǎn)兒校辩。)

Github Pages (第一步)

Github Pages免費(fèi)的靜態(tài)站點(diǎn),其特點(diǎn):免費(fèi)托管辆童、自帶主題宜咒、支持自制頁(yè)面等。

創(chuàng)建Github Pages比較簡(jiǎn)單把鉴,只要你有一個(gè)github賬號(hào)在創(chuàng)建一個(gè)倉(cāng)庫(kù)就行了故黑,但是這個(gè)倉(cāng)庫(kù)是有規(guī)則的,其格式必須為:yourusername.github.io纸镊。然后根據(jù)提示一直下一步即可倍阐,非常簡(jiǎn)單概疆。

image

作為一個(gè)開(kāi)發(fā)者逗威,要是連一個(gè)github賬號(hào)都沒(méi)有,那你可以洗洗睡了岔冀。

而倉(cāng)庫(kù)命名格式中的yourusername是你的github用戶名凯旭。筆者的github用戶名是biggercoffee。所以倉(cāng)庫(kù)命名格式則是biggercoffee.github.io

由于筆者有biggercoffee.github.io這個(gè)倉(cāng)庫(kù),所以我上述效果圖提示已存在罐呼。純屬作為演示鞠柄。

Hexo (第二步)

Hexo 是一個(gè)快速、簡(jiǎn)潔且高效的博客框架嫉柴。Hexo 使用 Markdown(或其他渲染引擎)解析文章厌杜,在幾秒內(nèi),即可利用靚麗的主題生成靜態(tài)網(wǎng)頁(yè)计螺。

安裝

Hexo的安裝網(wǎng)上有很多教程夯尽,但很多都很蛋疼且過(guò)期技術(shù),所以最好的還是參考Hexo官方的安裝教程來(lái)一步一步走登馒。在此筆者也不寫詳細(xì)教程了匙握,因?yàn)榭赡懿怀?個(gè)月就坑了小伙伴們。中文版Hexo文檔點(diǎn)此進(jìn)行傳送陈轿。圈纺。。

本地環(huán)境說(shuō)白了就是要有GitNode.js環(huán)境即可麦射。詳情參見(jiàn)官網(wǎng)文檔為準(zhǔn)蛾娶,也最好參考官網(wǎng),避免入坑法褥。

建站

Hexo安裝好了之后茫叭,就開(kāi)始進(jìn)行建站。打開(kāi)終端cd到桌面并使用如下命令即可建好

hexo init yourname
cd yourname
npm install

其中yourname是你的文件夾名字可隨意劝氲取(本文章假設(shè)yourname的文件夾名稱是Hexo)揍愁。
建站好了之后需要了解更多的信息和其他步驟請(qǐng)參考官網(wǎng)的這篇文檔。https://hexo.io/zh-cn/docs/setup.html

這里需要特別提一下杀饵,官方的文檔里并沒(méi)講解如何配置與Github pages進(jìn)行關(guān)聯(lián)莽囤,在此特意說(shuō)一下配置信息。進(jìn)入到你的站點(diǎn)(使用hexo init yourname命令時(shí)切距,這里的yourname文件夾目錄朽缎,剛假設(shè)yourname是Hexo,所以我們進(jìn)入Hexo目錄)谜悟,然后以文本編輯器打開(kāi)_config.yml文件话肖,并滾動(dòng)到最下面添加如下配置信息(注意最下邊有deploytype字段,覆蓋這兩個(gè)字段或者刪除這兩個(gè)字段然后復(fù)制下面的四個(gè)字段也行葡幸。):

deploy:
type: git
repo: https://github.com/biggercoffee/biggercoffee.github.io.git
branch: master

把其中repo字段的值替換成你的github pages提交代碼的git地址最筒。

別告訴我你不知道你的github pages的git提交地址。蔚叨。床蜘。
好吧辙培,我還是附上一張截圖吧,進(jìn)入到你的github剛創(chuàng)建好的那個(gè)github pages倉(cāng)庫(kù)就能看到了邢锯。

image

好吧扬蕊,到此你使用終端,然后進(jìn)入到你的站點(diǎn)文件夾使用hexo s命令丹擎,如果成功會(huì)打印類似Hexo is running at http://localhost:4000/. Press Ctrl+C to stop的一句話尾抑,再打開(kāi)你的瀏覽器輸入localhost:4000地址見(jiàn)證神奇的一刻吧。

發(fā)布

當(dāng)然這只是本地跑起來(lái)了蒂培,而你的github pages服務(wù)器上并沒(méi)有蛮穿,所以你就需要在你的站點(diǎn)里使用終端命令進(jìn)行發(fā)布:

hexo clean
hexo g
hexo d

命令詳解,第一條是清楚緩存毁渗,第二條命令是生成本地發(fā)布文件夾践磅,第三條命令才是最后的發(fā)布到github pages上。更多的hexo命令操作請(qǐng)參考官方文檔即可灸异。不過(guò)一般用來(lái)用去無(wú)非就是創(chuàng)建頁(yè)面府适、發(fā)布這么幾條命令而已。Hexo官方命令參考文檔

其實(shí)學(xué)習(xí)一個(gè)新東西有事沒(méi)事多去官方看文檔肺樟,比在網(wǎng)上查資料要來(lái)的更靠譜的多檐春。

HEXO主題

如果你到了這里沒(méi)有任何問(wèn)題,那么恭喜你已經(jīng)成功了么伯,不過(guò)這才剛剛開(kāi)始疟暖。
當(dāng)你成功的看到自己博客搭建好的那一刻又是激動(dòng)又是失望,激動(dòng)的是博客總算折騰出來(lái)了田柔,失望的是俐巴,為何如此的丑。硬爆。欣舵。說(shuō)實(shí)話Hexo默認(rèn)的主題自我感覺(jué)還過(guò)得去,如果你想換風(fēng)格,Hexo的主題網(wǎng)上隨便一搜也有很多缀磕。在此筆者使用的博客主題是Next(國(guó)人寫的)缘圈。https://github.com/iissnan/hexo-theme-next

Next文檔已經(jīng)寫得很詳細(xì)了(上述鏈接里有文檔地址),筆者在此也沒(méi)啥要寫的袜蚕。只不過(guò)弱弱的吐槽一下糟把,配置這東西需要注冊(cè)的賬號(hào)挺多的。牲剃。遣疯。但擴(kuò)展性很強(qiáng),需要什么功能自己去配置一下即可颠黎。

域名綁定(第三步另锋,可選)

筆者是在萬(wàn)網(wǎng)買的域名(http://xiaopingblog.cn/)。 域名買好之后提交實(shí)名認(rèn)證等狭归,這些操作就不在贅述夭坪。域名購(gòu)買地址https://wanwang.aliyun.com/

這里需要特別提一下的就是萬(wàn)網(wǎng)如何與github pages進(jìn)行綁定过椎,首先假設(shè)你有一個(gè)域名并且是可用狀態(tài)室梅。修改你域名的DNS地址為 f1g1ns1.dnspod.netf1g1ns2.dnspod.net

image

然后在你的本地站點(diǎn)目錄里的source目錄下添加一個(gè)CNAME文件,不帶后綴疚宇,效果如下

image

以文本編輯器打開(kāi)CNAME亡鼠,里面添加你的域名信息(不加http://) 如下圖

image

填寫完了之后再重新部署到github pages上(部署簡(jiǎn)寫命令hexo d -g)

下一步注冊(cè)DNSpod,然后添加域名敷待,添加記錄即可间涵。

添加域名填寫你的域名即可,老規(guī)矩不用添加http://榜揖,然后在點(diǎn)擊你的域名點(diǎn)進(jìn)去在添加記錄即可(其中記錄中CHAME的值是你的github pages的地址)勾哩。

image

那么現(xiàn)在把你本地的Hexo生成一下在提交到Github pages上吧(生成和提交簡(jiǎn)寫命令hexo d -g),然后打開(kāi)你的瀏覽器輸入你購(gòu)買的域名嘗試吧举哟。筆者的博客域名:http://xiaopingblog.cn/ 大家盡情的去蹂躪吧思劳。

ps:萬(wàn)網(wǎng)DNS地址更換貌似需要一段時(shí)間才能生效,如果不能訪問(wèn)請(qǐng)晚點(diǎn)或者隔天再訪問(wèn)域名妨猩,如果還是不行可能就是出問(wèn)題了潜叛。反正筆者當(dāng)時(shí)運(yùn)氣好,修改了萬(wàn)網(wǎng)DNS之后即時(shí)生效壶硅。

筆者分享

分享一些筆者用Hexo寫文章的tips

文章管理

一般筆者寫文章威兜、修改文章是在本地可視化寫文章,然后在使用命令提交上去庐椒。筆者使用的是一個(gè)hexo可視化文章管理的插件(hey)牡属,地址:https://github.com/nihgwu/hexo-hey

當(dāng)然也有一個(gè)Hexoadmin插件扼睬,但是那個(gè)插件不支持圖片拖拽進(jìn)來(lái)逮栅,所以筆者推薦使用hey。安裝和使用詳情窗宇,參見(jiàn)筆者給出的github地址措伐。

shell腳本自動(dòng)化(可忽略,只是一個(gè)想法)

開(kāi)啟Hexo的本地服務(wù)或者提交到github pages這些都是一些終端里的Hexo命令军俊,所以筆者寫了一些shell腳本侥加,來(lái)簡(jiǎn)化這些操作。所以基本就是用hey可視化寫文章粪躬,寫好了之后担败,然后點(diǎn)擊一鍵部署shell腳本昔穴,然后就自動(dòng)發(fā)布了(當(dāng)然這也純屬雞助,看個(gè)人提前。)吗货。由于shell腳本比較簡(jiǎn)單,隨意網(wǎng)上搜索資料一大堆狈网。再加上筆者自己寫的腳本代碼也沒(méi)上傳宙搬,在此插入一個(gè)一鍵部署的shell腳本代碼

cd Desktop/Hexo
hexo clean
hexo g
hexo d

cd到自己的站點(diǎn)目錄,然后直接使用hexo命令即可拓哺。shell腳本自動(dòng)化操作就是封裝了這些命令而已勇垛,在此也只是提供這么一個(gè)想法,既然我們都是coder士鸥,何不善用自己已有的知識(shí)尼闲孤。

寫到最后

github pages雖然免費(fèi),但畢竟是國(guó)外的服務(wù)器烤礁,國(guó)內(nèi)訪問(wèn)可以稍微緩慢崭放,如果是土豪,可去買一個(gè)支持Node.js的國(guó)內(nèi)云空間即可鸽凶”疑埃總之github pages + hexo搭建博客還是挺能折騰人的。但畢竟免費(fèi)玻侥,而且身為技術(shù)人員不就是該具備折騰的精神嗎决摧?(博客地址點(diǎn)此)

反饋問(wèn)題

具反饋hexo d部署的時(shí)候出現(xiàn)了not found問(wèn)題,如果遇上這問(wèn)題先輸入npm install hexo-deployer-git --save命令凑兰,然后在運(yùn)行hexo d部署嘗試掌桩。(在這里感謝@LeoLeoHan給出的解決方案)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市姑食,隨后出現(xiàn)的幾起案子波岛,更是在濱河造成了極大的恐慌,老刑警劉巖音半,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件则拷,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡曹鸠,警方通過(guò)查閱死者的電腦和手機(jī)煌茬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)彻桃,“玉大人坛善,你說(shuō)我怎么就攤上這事。” “怎么了眠屎?”我有些...
    開(kāi)封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵剔交,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我改衩,道長(zhǎng)岖常,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任燎字,我火速辦了婚禮,結(jié)果婚禮上阿宅,老公的妹妹穿的比我還像新娘候衍。我一直安慰自己,他們只是感情好洒放,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布蛉鹿。 她就那樣靜靜地躺著,像睡著了一般往湿。 火紅的嫁衣襯著肌膚如雪妖异。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天领追,我揣著相機(jī)與錄音他膳,去河邊找鬼。 笑死绒窑,一個(gè)胖子當(dāng)著我的面吹牛棕孙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播些膨,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼蟀俊,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了订雾?” 一聲冷哼從身側(cè)響起肢预,我...
    開(kāi)封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎洼哎,沒(méi)想到半個(gè)月后烫映,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡噩峦,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年窑邦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片壕探。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡冈钦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出李请,到底是詐尸還是另有隱情瞧筛,我是刑警寧澤厉熟,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站较幌,受9級(jí)特大地震影響揍瑟,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乍炉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一绢片、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧岛琼,春花似錦底循、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至困檩,卻和暖如春祠挫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背悼沿。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工等舔, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人糟趾。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓软瞎,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親拉讯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子涤浇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

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