用jekyll制作高大上的網站(一)——安裝與配置


很多人會制作自己的主頁,頁面美觀簡潔,一直很在意是怎么做的。

最近公司需要做個文檔庫的主頁,就研究了一些開源的工具,后面發現了jekyll(讀傑克爾),將純文本轉換為靜態博客網站。

 

一、Ruby

jekyll提供了很多現成的主題可以使用,里面有很多高大上的款式。

官網上面有專門一節是介紹安裝的,不過在實際安裝中還是會有一些問題。

需要有下載Ruby環境,選最新的那個版本即可,官網上面安裝列中有一個RubyGems,但Ruby1.9.1 以后版本已經自帶了,所以無需額外下載。

 

二、切換source源

由於國內網絡原因(你懂的),導致 rubygems.org 存放在 Amazon S3 上面的資源文件間歇性連接失敗。

有兩張方法,一種是切換到淘寶,另外一種是切換到ruby-china,網上大部分的教程都是用淘寶的。

在用淘寶的后老是會出現認證錯誤,后面上google查問題,發現淘寶的已經不維護了,詳見《Ruby China的RubyGems 鏡像上線

我把兩種方法都記錄了一下,

1) ruby-china

將source改成“https://gems.ruby-china.org/”,在打開的頁面中,會告訴你幾個指令。

由於我先用了taobao的source,所以這里remove的是淘寶的。

ruby-china中說道:“如果遇到 SSL 證書問題,你又無法解決,請直接用 http://gems.ruby-china.org 避免 SSL 的問題。”

 

2) taobao

將source改成“https://ruby.taobao.org/”,在打開的頁面中,會告訴你幾個指令。

如果在輸入指令出錯的話,如下圖所示,就是要讓你下載下載證書文件

然后放到某個位置,輸入指令set,“D:\Ruby23-x64\cacert.pem”就是文件的具體路徑

set SSL_CERT_FILE=D:\Ruby23-x64\cacert.pem

也可以將“SSL_CERT_FILE”設置為環境變量,這樣就不用每次都要輸入設置的指令。

不知為何,后面我加載包的時候,就是會出現問題,囧,也許是我做了什么操作導致的,額額額。

 

三、安裝jekyll

在輸入安裝指令后,就會看到默認安裝了14個包。

gem install jekyll

 

四、啟動

主題列表中選了兩個,Minimal MistakesJekyll Clean。前者頁面比較全但相對比較復雜,后者頁面少但很簡潔。

輸入指令,

jekyll serve --watch

在顯示的文字中有一句讓你安裝“wdm”,會在下面介紹。

在頁面中輸入“http://localhost:4000/jekyll-clean/index.html”后就能看到頁面了。

 

五、wdm

從 v2.4.0 開始,Jekyll 本地部署時,會相當於以前版本加 --watch 一樣,監聽其源文件的變化。

而 Windows 似乎有時候並不會奏效,若你碰到,可安裝 wdm (Windows Directory Monitor ) 來改善這個問題。

如果要安裝“wdm”得要先安裝“Devkit”,在打開的網站中下載后,會讓你解壓到某個文件夾,接下來就是進入到這個文件夾中。

執行指令“ruby dk.rb init”。

再執行指令“ruby dk.rb install”,不過提示我先去修改“config.yml”中的路徑。

config.yml文件就在解壓出來的文件中。

再執行install指令。

 

六、Gemfile文件

Gemfile是一個用於描述gem之間依賴的文件。gem是一堆Ruby代碼的集合,它能夠為我們提供調用。

Gemfile是可通過Bundler創建。

gem install bundler
bundle init
bundle install

Gemfile文件中設置的內容如下:

source "https://rubygems.org"

gem "jekyll-paginate"
gem "kramdown"
gem "jekyll-watch"
gem "wdm", "~> 0.1.0" if Gem.win_platform?

 

七、自動刷新頁面

1)修改Gemfile文件

gem 'guard'
gem 'guard-jekyll-plus'
gem 'guard-livereload'

要添加三個包,執行“bundle install”,如果執行出錯,那就一個一個加吧。

 

2)創建guard配置文件

執行指令,將會生成一個Guardfile文件。

guard init

生成的Guardfile文件內有一些代碼,在代碼的最后添加如下代碼:

guard 'jekyll-plus', :serve => true do
  watch /.*/
  ignore /^_site/
end

guard 'livereload' do
  watch /.*/
end

 

3)添加livereload插件

安裝Live Reload Extension,如果是chrome,就到Chrome Web Store下載

安裝成功后,在右上角可以看到一個小按鈕

如果是運行狀態,那么會自動添加一個js文件引用:

 

4)運行

執行運行指令:

bundle exec guard start

這里注意一下,livereload要先關閉。

運行上面指令,當出現下面的內容后,再運行livereload。

然后會出現“connected”連接了,接下來修改內容就會自動刷新頁面了。

試用后發現,有時候會刷新不成功,還是原來的樣子,看來某些地方還需要改進。

 

demo下載

http://download.csdn.net/detail/loneleaf1/9508074

 

參考資料:

Fixing SSL_connect error while installing Ruby Gems on Windows

Gemfile 詳解

Bundler 的作用及原理

gem install SSL 錯誤

Windows 下搭建Jekyll離線部落格環境

Setting Up LiveReload With Jekyll

Using Live Reload with Jekyll


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM