怎么我這里有一磚一瓦卻想象不出來(lái)這到底是如何壘成的呢。這種孔乙己似的言論總是像白日夢(mèng)一樣閃爍在許多人的腦海,有些看客有時(shí)也會(huì)肆意地嘲笑孔乙己們,“不過(guò)是三下五除二,你看看把孔乙己愁的,像個(gè)掉書(shū)袋的老先生”。不積跬步無(wú)以至千里,不積小流無(wú)以成江海。今天我們以靜態(tài)網(wǎng)頁(yè)為例,感受一下富商巨賈的起步路——兜售靜態(tài)網(wǎng)頁(yè)小商販。 0x1 關(guān)于靜態(tài)網(wǎng)頁(yè)與動(dòng)態(tài)網(wǎng)頁(yè)這么分類是有所偏頗的,因?yàn)楣俜讲](méi)有相關(guān)的概念。但這個(gè)概念理解之后會(huì)對(duì)Web技術(shù)的理解有較大的作用。我這里給它們簡(jiǎn)單下個(gè)定義:靜態(tài)網(wǎng)頁(yè)是格式遵循HTML標(biāo)準(zhǔn)的,形成之后內(nèi)容不能修改的網(wǎng)頁(yè);動(dòng)態(tài)網(wǎng)頁(yè)是格式遵循一定腳本程序語(yǔ)言標(biāo)準(zhǔn)的,形成之后可以根據(jù)程序要求動(dòng)態(tài)更新的網(wǎng)頁(yè)。 1、靜態(tài)網(wǎng)頁(yè)不從數(shù)據(jù)庫(kù)拉取數(shù)據(jù),動(dòng)態(tài)網(wǎng)頁(yè)一般要從數(shù)據(jù)庫(kù)拉取數(shù)據(jù);2、靜態(tài)網(wǎng)頁(yè)不需要后端服務(wù)器支持,動(dòng)態(tài)網(wǎng)頁(yè)一般需要后端服務(wù)器;3、靜態(tài)網(wǎng)頁(yè)加載快,動(dòng)態(tài)網(wǎng)頁(yè)加載要慢一些;4、靜態(tài)網(wǎng)頁(yè)URL指向明確,動(dòng)態(tài)網(wǎng)頁(yè)URL指向不明確(比如會(huì)包含?字符)。但是,網(wǎng)頁(yè)動(dòng)畫(huà)并不是區(qū)分靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài)網(wǎng)頁(yè)的區(qū)別,通過(guò)JavaScript腳本可以制造一些網(wǎng)頁(yè)動(dòng)畫(huà),但這仍屬于靜態(tài)網(wǎng)頁(yè)的范疇。現(xiàn)在比較常見(jiàn)的個(gè)人博客、編程手冊(cè)等一般都是靜態(tài)網(wǎng)頁(yè),涉及商業(yè)、大量交互的比如淘寶、京東等一般都是動(dòng)態(tài)網(wǎng)頁(yè)。 0x2 利用Hexo框架快速建立一個(gè)靜態(tài)網(wǎng)站——個(gè)人博客(需求)個(gè)人博客是我們旅程的第一個(gè)需求,以后的文章中,凡是標(biāo)有(需求)的標(biāo)題都是屬于基于云的具體應(yīng)用。
首先Hexo框架是基于Node.js的一個(gè)程序,用于生成靜態(tài)網(wǎng)站的JavaScript程序。Node.js是這些JavaScript的服務(wù)端環(huán)境,基于Chrome's V8技術(shù)的解析運(yùn)行引擎。 在需要Node.js的操作系統(tǒng)上安裝node.js,例如本次我們只需要將生成的靜態(tài)網(wǎng)頁(yè)部署到云服務(wù)器的Nginx目錄下即可,就不需要在云服務(wù)器上部署Node.js。 # 第一步,遵循Node.js官網(wǎng)安裝說(shuō)明,下載安裝包安 # 并將相關(guān)執(zhí)行目錄加入系統(tǒng)環(huán)境變量
# 第二步,配置國(guó)內(nèi)鏡像源 npm config set registry "https://registry.npm."
# 第三步,安裝Git,Windows遵循官網(wǎng)步驟即可
# 第四步,下載hexo框架、腳手架工具 npm install -g hexo-cli
# 第五步,構(gòu)建hexo項(xiàng)目環(huán)境 hexo init <folder> cd <folder> npm install
# 第六步,構(gòu)建hexo項(xiàng)目 # 最外層_config.yml是項(xiàng)目的主要配置文件,按照hexo官網(wǎng)配置說(shuō)明進(jìn)行合理配置 # 本文利用sftp與云服務(wù)器進(jìn)行同步,需要在配置文件里寫(xiě)明云服務(wù)器配置信息
# 第七步,寫(xiě)文章 hexo new [layout] <title> hexo new post hello_world
# 第八步,生成靜態(tài)網(wǎng)站并部署 hexo generate hexo deploy 靜態(tài)網(wǎng)站利用模板、樣式表等可以做華麗的界面,利用js可以做出絢麗的網(wǎng)頁(yè)動(dòng)畫(huà),大有乾坤,這里我們暫不討論。我們用靜態(tài)網(wǎng)站可以滿足一定需求,但這還不夠,我們需要復(fù)雜交互,需要存儲(chǔ),需要復(fù)雜業(yè)務(wù),需要彈性,需要更好的打包、部署、運(yùn)維,需要移動(dòng)端端設(shè)備適配,等等,這些功能都還需要后端服務(wù)器的參與。
|