作為一個(gè)程序員居然還沒(méi)有屬于自己的一個(gè)博客?
引言
上周有個(gè)小伙伴問(wèn)我有沒(méi)有個(gè)人博客,想和我互換一個(gè)友鏈。我以前也想過(guò)要自己搭個(gè)博客,但是一直遲遲沒(méi)有行動(dòng),一般寫(xiě)了文章就往其他平臺(tái)發(fā)一下就完事了。想了想為啥自己沒(méi)有搭建一個(gè)屬于自己的博客?一來(lái)的話可能嫌麻煩,需要往自己的博客平臺(tái)發(fā)布,平時(shí)一些第三方博客平臺(tái)的話都懶得發(fā)了,二來(lái)的話還要買(mǎi)服務(wù)器和域名一般的配置一年也得幾百大洋。所以一直沒(méi)有搭建一個(gè)屬于自己的博客。但是現(xiàn)在作為一個(gè)自媒體的時(shí)代,許多程序員都擁有自己的博客或者個(gè)人網(wǎng)站,這類站點(diǎn)的建立可以幫助我們記錄生活點(diǎn)滴,進(jìn)行個(gè)人展示,也能幫助自己擴(kuò)展社交圈子,做到以博識(shí)友。在不斷寫(xiě)作的過(guò)程中,能逼自己進(jìn)行腦力挖礦,讓自己對(duì)未知世界了解得更多,開(kāi)拓思維。所以想了想還是動(dòng)手弄一個(gè)。
博客網(wǎng)站的選型
現(xiàn)在寫(xiě)博客基本上都是采用markdown的格式,基本大多數(shù)主流博客網(wǎng)站都支持這種格式,可以做到寫(xiě)一篇到處復(fù)制。現(xiàn)在一般來(lái)說(shuō)常用的博客可以分為兩大類分別是動(dòng)態(tài)和靜態(tài)博客網(wǎng)站。
靜態(tài)博客
靜態(tài)博客一般都是通過(guò)markdown文件,然后通過(guò)其他的一些程序生成html文件然后將html文件發(fā)布到服務(wù)上,我們一般可以通過(guò)hexo、Jekyll等框架來(lái)生成靜態(tài)的博客。我們可以把生成的html發(fā)布到第三方服務(wù)器上,比如github、gitee、coding等。這些服務(wù)器都是可以白嫖的。然后還可以自定義自己的域名。
動(dòng)態(tài)博客
動(dòng)態(tài)網(wǎng)站指文章內(nèi)容等數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中。這種可玩性比較高,適合喜歡折騰,喜歡?DIY?的小伙伴。WordPress?算是搭建動(dòng)態(tài)網(wǎng)站比較成熟的方案,它是一個(gè)經(jīng)典的博客平臺(tái)。而且生態(tài)圈比較完善,有大量的插件以及博客主題給我們選擇,自由度很高。但是說(shuō)實(shí)話動(dòng)態(tài)博客的話說(shuō)實(shí)話有點(diǎn)麻煩,需要自己買(mǎi)域名和服務(wù)器、數(shù)據(jù)庫(kù)等,看了看最差的配置基本上都要將近百來(lái)塊錢(qián)一年。我結(jié)合自身的一個(gè)情況還是選擇了一個(gè)靜態(tài)博客,在經(jīng)過(guò)大量的谷歌搜索之后最終還是選擇了采用hexo(Hexo?是一個(gè)快速、簡(jiǎn)潔且高效的博客框架。Hexo?使用?Markdown(或其他渲染引擎)解析文章,在幾秒內(nèi),即可利用靚麗的主題生成靜態(tài)網(wǎng)頁(yè))來(lái)搭建自己的博客網(wǎng)站。話不多少我們還是進(jìn)入今天的主題手把手的來(lái)搭建一個(gè)屬于自己的博客網(wǎng)站。
搭建步驟
安裝git,這個(gè)我就不詳細(xì)介紹了,默認(rèn)程序員應(yīng)該都是會(huì)的,如果有沒(méi)有用過(guò)的可以看看我以前寫(xiě)的這個(gè)文章《10分鐘帶你入門(mén)git和github》。 安裝NodeJs,因?yàn)?/span> Hexo是基于nodeJs環(huán)境的,所以這個(gè)nodejs是必須安裝的,下載地址(說(shuō)明:LTS為長(zhǎng)期支持版,Current為當(dāng)前最新版)作為一個(gè)程序員大家一般肯定都會(huì)下載最新的去安裝。我也不例外,但是我的電腦是win7的系統(tǒng),最近版本居然安裝不了,這個(gè)就有點(diǎn)過(guò)分了,居然看不起win7,不支持安裝 弱弱的問(wèn)下現(xiàn)在用win7系統(tǒng)的人多嗎?只能重新下載一個(gè)長(zhǎng)期版本。這個(gè)版本沒(méi)有什么問(wèn)題,直接點(diǎn)下一步下一步直到安裝結(jié)束。查看下版本:node -v
3.安裝hexo安裝hexo 需要使用npn命令。npm默認(rèn)的源的下載速度可能很慢,建議使用淘寶鏡像替換。執(zhí)行下面的命令,將npm的源設(shè)置成淘寶鏡像站。就跟我們maven下載jar一樣,一般都會(huì)把中央倉(cāng)庫(kù)改成阿里的。
npm?config?set?registry?"https://registry.npm.taobao.org"
安裝hexo
npm install hexo-cli -g
初始化hexo
hexo init
初始化我們可以看到在我們的目錄下會(huì)生成以下文件
node_modules:是依賴包
public:存放的是生成的頁(yè)面
scaffolds:命令生成文章等的模板
source:用命令創(chuàng)建的各種文章
themes:主題
_config.yml:整個(gè)博客的配置
db.json:source解析所得到的
package.json:項(xiàng)目所需模塊項(xiàng)目的配置信息。接下來(lái) 安裝博客所需要的依賴文件
npm install
接下來(lái)在執(zhí)行下
hexo g & hexo s
至此整個(gè)博客就發(fā)布完成了,我們?cè)跒g覽器輸入http://localhost:4000/
就可以看到我們的一個(gè)博客界面了:
我們可以發(fā)現(xiàn)整個(gè)博客頁(yè)面還是比較簡(jiǎn)潔的內(nèi)容也不是很豐富.我們可以根據(jù)自己的喜好,然后去網(wǎng)上找自己喜歡的博客主題,我經(jīng)過(guò)大量的篩選。最終選擇了這個(gè)可以自適應(yīng)的主題hexo-theme-matery,并且支持留言和評(píng)論以及搜索。怎么應(yīng)用這個(gè)主題呢?很簡(jiǎn)單直接從git上把這個(gè)主題clone下來(lái)放到我們的themes目錄下
然后在回到hexo的根目錄修改下_config.yml文件
這樣我們的主題就替換成功了。可以看下我替換后的效果,歡迎大佬們留言來(lái)互換友鏈哦。訪問(wèn)地址:https://javajr.cn/也可以直接點(diǎn)擊閱讀原文。PC端效果
H5效果
4.發(fā)布到github和gitee經(jīng)過(guò)上面的步驟我們基于本地的一個(gè)博客就已經(jīng)完成了,但是這還遠(yuǎn)遠(yuǎn)不夠,我們需要外網(wǎng)也能夠訪問(wèn),一般我們需要自己購(gòu)買(mǎi)服務(wù)器,但是github和碼云gitee給我們提供了免費(fèi)的服務(wù)器,可以讓我們把靜態(tài)網(wǎng)站托管到上面。下面我們以gitee為例創(chuàng)建一個(gè)倉(cāng)庫(kù)
接下來(lái)在把這個(gè)倉(cāng)庫(kù)的地址copy到hexo根目錄的配置文件中
本地目錄要發(fā)布到gitee 需要執(zhí)行
npm?install?hexo-deployer-git?--save
然后我們?cè)趫?zhí)行下
hexo?clean?&?hexo?g?&?hexo?d
然后我們就可以看到gitee上就有我們的靜態(tài)博客了
然后我們點(diǎn)擊下更新部署gitee 就會(huì)幫我們生成一個(gè)外網(wǎng)可訪問(wèn)的網(wǎng)站
是不是超級(jí)簡(jiǎn)單github也類似我就不一一演示了。至此我們就已經(jīng)完成了一個(gè)外網(wǎng)可訪問(wèn)的博客了。
集成評(píng)論
我采用的是Gitalk 評(píng)論模塊
集成這個(gè)模塊的時(shí)候經(jīng)常會(huì)有Error: Network Error ?這個(gè)錯(cuò)誤
這個(gè)錯(cuò)誤原因主要有兩個(gè)一個(gè)是國(guó)內(nèi)github網(wǎng)速問(wèn)題超時(shí)導(dǎo)致,還有一個(gè)的話就是我們?cè)谂渲梦募臅r(shí)候gitalk#repo這個(gè)屬性不是http開(kāi)頭的倉(cāng)庫(kù)地址,只要寫(xiě)個(gè)倉(cāng)庫(kù)名字就可以了。
上面秘鑰都是假的注意換成自己申請(qǐng)OAuth Application時(shí)候的。
自定義域名綁定(javajr.cn)
這個(gè)需要自己購(gòu)買(mǎi)一個(gè)域名然后實(shí)名認(rèn)證下,接下來(lái)就是解析下就可以了,我這里以阿里云為例:
gitee現(xiàn)在貌似不支持自定義域名了,原來(lái)會(huì)員好像是支持的。但是github是支持的。我們到我們部署在github的博客倉(cāng)庫(kù)點(diǎn)擊setting按鈕(需要使勁往下拖,這個(gè)設(shè)置在頁(yè)面的比較下面)就可以更新我們自己的域名。
這樣我們就可以通過(guò)自己的域名(javajr.cn)訪問(wèn)了
總結(jié)
基本上花個(gè)半小時(shí)左右我們就可以完成了一個(gè)可以外網(wǎng)訪問(wèn)的博客了哦。還有一些seo的優(yōu)化、或者讓百度收錄,我提交了好久谷歌和百度貌似也沒(méi)有被收錄。網(wǎng)上說(shuō)百度收錄的時(shí)間比較久。如果被收錄了以后有機(jī)會(huì)在來(lái)補(bǔ)充下。
—?【 THE END 】— 本公眾號(hào)全部博文已整理成一個(gè)目錄,請(qǐng)?jiān)诠娞?hào)里回復(fù)「m」獲取! 3T技術(shù)資源大放送!包括但不限于:Java、C/C++,Linux,Python,大數(shù)據(jù),人工智能等等。在公眾號(hào)內(nèi)回復(fù)「1024」,即可免費(fèi)獲取!!
