繼上一篇文章之后,你的博客應(yīng)該都已經(jīng)能夠正常的在本機(jī)運(yùn)行了。但是這遠(yuǎn)遠(yuǎn)不能滿足我們搭建博客的需求。不過(guò)老生常談,大部分的配置都能夠在官方找到,傳送門(mén)Hexo配置。不同的主題還有個(gè)性化的配置,詳細(xì)的配置請(qǐng)參見(jiàn)你使用的主題的文檔。
Hexo的目錄結(jié)構(gòu)
使用
$ hexo init
命令之后,會(huì)初始化完成一個(gè)完整的博客文件夾,其中包含以下幾個(gè)文件或文件夾:
_config.yml Hexo的配置文件,大部分的參數(shù)在這里配置
package.json 應(yīng)用程序的信息,小白不用動(dòng)這個(gè)文件,官方提示可以自由移除
scaffolds 模板文件夾。新建文章時(shí),采用的模板存放于此
source 用戶存放資源的地方,所有用戶生成文件或資源都用這里保存_drafts 草稿文件夾,用戶可以直接生成草稿到這個(gè)文件夾
_posts 可發(fā)布的文章文件夾,下面的文章會(huì)在hexo d時(shí),發(fā)布出去
themes 主題文件夾,Hexo會(huì)根據(jù)主題設(shè)置生成靜態(tài)頁(yè)面
_config.yml配置
這一節(jié)的內(nèi)容全部copy自官方文檔
網(wǎng)站
| 參數(shù) | 描述 |
|---|---|
| title | 網(wǎng)站標(biāo)題 |
| subtitle | 網(wǎng)站副標(biāo)題 |
| description | 網(wǎng)站描述 |
| author | 您的名字 |
| language | 網(wǎng)站使用的語(yǔ)言 |
| timezone | 網(wǎng)站時(shí)區(qū)。Hexo默認(rèn)使用您電腦的時(shí)區(qū)。時(shí)區(qū)列表。比如說(shuō):America/New_York,Japan,和UTC。 |
網(wǎng)址
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| url | 網(wǎng)址 | |
| root | 網(wǎng)站根目錄 | |
| permalink | 文章的永久鏈接格式 | :year/:month/:day/:title/ |
| permalink_default | 永久鏈接中各部分的默認(rèn)值 |
網(wǎng)站存放在子目錄
如果您的網(wǎng)站存放在子目錄中,例如
http://yoursite.com/blog,則請(qǐng)將您的url設(shè)為http://yoursite.com/blog并把root設(shè)為/blog/。
目錄
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| source_dir | 資源文件夾,這個(gè)文件夾用來(lái)存放內(nèi)容。 | source |
| public_dir | 公共文件夾,這個(gè)文件夾用于存放生成的站點(diǎn)文件 | public |
| tag_dir | 標(biāo)簽文件夾 | tags |
| archive_dir | 歸檔文件夾 | archives |
| category_dir | 分類文件夾 | categories |
| code_dir | Include code文件夾 | downloads/code |
| i18n_dir | 國(guó)際化(i18n)文件夾 | :lang |
| skip_render | 跳過(guò)指定文件的渲染,您可使用glob 表達(dá)式來(lái)匹配路徑。 |
文章
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| new_post_name | 新文章的文件名稱 | :title.md |
| default | 預(yù)設(shè)布局 | post |
| auto_spacing | 在中文和英文之間加入空格 | false |
| titlecase | 把標(biāo)題轉(zhuǎn)換為title case | false |
| external_link | 在新標(biāo)簽中打開(kāi)鏈接 | true |
| filename_case | 把新文件名稱轉(zhuǎn)換為(1)小寫(xiě)或(2)大寫(xiě) | 0 |
| render_drafts | 顯示草稿 | false |
| post_asset_folder | 啟動(dòng)Asset文件夾 | false |
| relative_link | 吧鏈接改為與根目錄的相對(duì)地址 | false |
| future | 顯示未來(lái)的文章 | true |
| highlight | 代碼塊的設(shè)置 |
分類&標(biāo)簽
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| default_category | 默認(rèn)分類 | uncategorized |
| category_map | 分類別名 | |
| tag_map | 標(biāo)簽別名 |
日期/時(shí)間格式
Hexo使用Moment.js來(lái)解析和顯示時(shí)間。
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| date_format | 日期格式 | YYYY-MM-DD |
| time_format | 時(shí)間格式 | H:mm:ss |
分頁(yè)
| 參數(shù) | 描述 | 默認(rèn)值 |
|---|---|---|
| per_page | 每頁(yè)顯示的文章量(0=關(guān)閉分頁(yè)功能) | 10 |
| pagination_dir | 分頁(yè)目錄 | page |
擴(kuò)展
| 參數(shù) | 描述 |
|---|---|
| theme | 當(dāng)前主題名稱。值為false時(shí)禁用主題 |
| deploy | 部署部分的設(shè)置 |
主題設(shè)置
我的主題使用的@Litten制作的主題Yilia。
關(guān)于主題的設(shè)置,可以參考該主題的配置。
關(guān)于主題的設(shè)置,有些坑在這里說(shuō)明一下。
相對(duì)路徑
Hexo對(duì)于路徑的生成策略都是相對(duì)路徑,也就是說(shuō),只要你不指定為絕對(duì)路徑,設(shè)置的鏈接都將是root+url的形式。
例如:
github: "github.com/arobot"
點(diǎn)擊圖標(biāo)會(huì)鏈接到http://yoursite/github.com/arobot,顯然這樣是錯(cuò)誤的。正確的設(shè)置方式是絕對(duì)路徑:
github: "https://github.com/arobot"
同理,其他項(xiàng)的設(shè)置也是如此,注意區(qū)分你使用的鏈接是否需要指定絕對(duì)路徑。
個(gè)人域名
獲取ip
如果你手上恰好有一個(gè)為自己購(gòu)買(mǎi)的域名,那正適合你剛剛搭建好的博客。
我的域名是在aliyun.com上購(gòu)買(mǎi)的,在我搭建這個(gè)博客時(shí)候就想,我應(yīng)該有一個(gè)自己的域名,換了很多組合選了一個(gè)還算滿意的。當(dāng)你看到這里的時(shí)候,如果也有沖動(dòng),那趕緊去看看吧,說(shuō)不定過(guò)兩天就沒(méi)有了呢
首先,需要知道你的博客所在的服務(wù)器地址
$ ping arobot.github.io
得到我的博客在151.101.100.133上面,記下這個(gè)ip,會(huì)在后面用到。
設(shè)置域名解析
進(jìn)入阿里云的云解析,可以為你購(gòu)買(mǎi)的域名添加解析。

| 選項(xiàng) | 描述 |
|---|---|
| 記錄類型 | 選擇A
|
| 主機(jī)記錄 | 配置兩項(xiàng)。一項(xiàng)填寫(xiě)@;另一項(xiàng)填寫(xiě)www
|
其他的選擇默認(rèn)就行,配置好的結(jié)果如下

完成了域名的解析工作之后,在博客的source文件下新建文件名為CNAME的文件,將你的域名不加協(xié)議填寫(xiě)進(jìn)去。例如wluo.me。
個(gè)性化域名的配置就完成了,將博客部署上去就能夠通過(guò)自己的域名鏈接過(guò)來(lái)。
部署博客
靜態(tài)網(wǎng)頁(yè)可以部署在多種服務(wù)器上,Hexo官方提供了多種部署方式,詳細(xì)的部署方式參見(jiàn)官網(wǎng)。
我是部署在Github pages上。
在_config.yml文件中配置deploy
deploy:
type: git
repo: https://github.com/arobot/arobot.github.io.git
branch: master
原文見(jiàn)我的博客