在前端學(xué)習(xí)初期货岭,我搭建了自己的博客網(wǎng)站,期間參考了很多資料疾渴,回顧發(fā)現(xiàn)千贯,這一路上也是從按部就班到半主動性。按照搜索到的流程按部就班地操作搞坝,總不能達(dá)到理想的效果搔谴,卡住,卡住桩撮,再卡住敦第,分外憂傷。事情可以慢下來店量,但不能放棄芜果。后來我調(diào)整戰(zhàn)略,嘗試?yán)斫釰ekyll的運作原理融师,事情慢慢變得清晰右钾,有條不紊。這篇文章不會涉及到詳細(xì)的建站過程诬滩,而是從另一個角度霹粥,簡述Jekyll到底是如何發(fā)揮“魔力”的。
如果你希望了解建站全過程疼鸟,可以大力的戳這里~????我的建站全過程????
另外后控,所使用的系統(tǒng)為win10。
1. 工作場所:Ruby平臺
Jekyll是運行在Ruby平臺上的程序空镜,所以浩淘,最開始要搭建Jekyll的工作環(huán)境捌朴,然后再安裝Jekyll工具,全部安裝成功后张抄,你就可以使用Jekyll這個強(qiáng)有力的工具了砂蔽。
具體步驟:
- 安裝 Ruby & Ruby Development Kit (下載網(wǎng)址:Ruby官網(wǎng) )
- 切換到Devkit的安裝目錄下,執(zhí)行
ruby dk.rb init
署惯,會自動生成config.yml
配置文件ruby dk.rb install
gem sources --add http://gems.ruby-china.org/ --remove http://rubygems.org/
gem install jekyll
gem install bundler
注意:
- 安裝Jekyll時出現(xiàn)SSL證書問題左驾,一般有兩個解決方法:一是更換gems鏡像源避免SSL問題;二是安裝OpenSSL保證安全下載极谊。我采用了前者诡右,因為簡單。
2. 遵守Jekyll的規(guī)矩
按規(guī)矩好辦事轻猖。想要使用Jekyll帆吻,就必須遵守Jekyll的規(guī)矩,你只有按照J(rèn)ekyll世界的語言咙边、規(guī)范猜煮,它才能乖乖為你所用。都有哪些規(guī)矩:
- 網(wǎng)站項目的文件結(jié)構(gòu)(結(jié)構(gòu))
- HTML模板語言要求(模板和數(shù)據(jù)注入)
當(dāng)然败许,具體的規(guī)矩全部都在官方文檔中王带。
3. 中場反思
當(dāng)你按照上述規(guī)矩,把網(wǎng)站需要的全部數(shù)據(jù)都整理好后市殷,就欠東風(fēng)了辫秧。那么要怎樣運行Jekyll,讓它把我們準(zhǔn)備的這些原材料被丧,加工成真實網(wǎng)站呢盟戏?
4. 配置你的Jekyll工具
使用它,那就先配置它甥桂。所以柿究,你需要編寫一個Gemfile文件。在這個文件中黄选,需要列舉你的網(wǎng)站項目中所有將要使用到的工具蝇摸,比如jekyll,jekyll plugins等等办陷,當(dāng)然你還要提供下載這些工具的地址貌夕,例如http://rubygems.org
。
5. 使用Jekyll工具
到這里民镜,所有的配置都搞定了啡专。接下來就開始使用Jekyll工具,施展魔法制圈,把我們的原始材料(符合Jekyll文檔規(guī)范)加工成真實網(wǎng)站们童。運行以下步驟:
- bundle install
- bundle exec Jekyll serve
解釋:bundle install
之后畔况,便把我們列舉在配置文件中的工具全部安裝起來;運行bundle exec jekyll serve
慧库,Jekyll開始實時工作跷跪,即通過它提供的本地服務(wù)器進(jìn)行本地預(yù)覽(無需聯(lián)網(wǎng)),你對文件所做的修改齐板,都會直接反映出來吵瞻,localhost:4000
刷新后,便能看到修改后的效果甘磨。
還要繼續(xù)解釋一下jekyll serve
:前臺所做的各種修改听皿,都會被后臺運行的Jekyll實時地加工、“翻譯”成真實網(wǎng)站宽档,而且,你能夠通過localhost:4000
本地預(yù)覽網(wǎng)站庵朝。此外吗冤,你可以和jekyll build
做對比:jekyll build
只是將原始材料“翻譯”成真實網(wǎng)站(_site
文件夾出現(xiàn)),實現(xiàn)jekyll serve
的部分功能九府,但是不會像Jekyll serve
那樣椎瘟,可以本地預(yù)覽,實時加工侄旬。
總結(jié)
當(dāng)然肺蔚,上述步驟2-5可以通過運行jekyll new your-website-name
命令,自動生成網(wǎng)站目錄結(jié)構(gòu)儡羔、Gemfile預(yù)定義配置以及相關(guān)工具的安裝宣羊,這也是網(wǎng)上大部分的流程步驟。不過汰蜘,有關(guān)網(wǎng)站的具體內(nèi)容還是要自己探索仇冯,雖然生成的網(wǎng)站也是有預(yù)定義的內(nèi)容(也就是Jekyll Theme),但太過簡單族操,你肯定不會特別滿意苛坚。這里插一句話,Jekyll Theme其實就是一個完整的Website了色难。你如果從GitHub上fork了一個你相中的主題泼舱,只需要修改一下網(wǎng)站的名稱等原作者相關(guān)信息后,就可以變成你的網(wǎng)站了枷莉。
結(jié)尾反思
在參考的資料中有兩篇印象特別深刻(墻裂推薦大家看一看=筷肌!)笤妙,一篇是在github上利用github提供的接口原生態(tài)的實踐jekyll的全部步驟涯贞。這篇很基礎(chǔ)枪狂,給我提供了別樣的思路,讓我能夠深入地思考jekyll的運作原理宋渔。另外一篇是傳授我們?nèi)绾卫肎itHub上的Jekyll Theme快速搭建自己的博客網(wǎng)站州疾,讓我更進(jìn)一步理解Jekyll文件的編寫、HTML模板語法的使用等皇拣,讓我漸漸不再對Jekyll感到束手無策严蓖、毫無頭緒,不會再有那種它就是我眼前氧急,卻遠(yuǎn)在天邊的感覺颗胡。
這個項目是去年11月份開啟的,到現(xiàn)在已經(jīng)有半年時間了吩坝。期間也做過幾次更新升級毒姨,博文也不定期更新(會慢慢遷移到簡書上)。搗鼓網(wǎng)站的過程钉寝,包括每次的更新升級也都詳細(xì)記錄在有道筆記上備忘弧呐。希望能和大家交流思想,共同進(jìn)步嵌纲。