從零開始折騰博客(0):靜態?動態?

這兩天心血來潮,忽然想折騰一個屬於自己的博客,也就是這一系列的緣由。而最終也總算是折騰出來了,要不你就不會看到這篇文章了

可在這折騰博客的第一步:選擇框架上,作爲一個選擇困難重症患者,自己首先就犯了難:選什麼樣的博客框架好呢?

仔細查了查資料,發現博客網站框架總的來講分成靜態和動態,分別生成的是靜態網頁和動態網頁。

那到底靜態網頁和動態網頁都是啥呢?咱們這就來仔細掰扯掰扯吧。

區分動態和靜態

所謂“動態”,不是說有個flash動畫有個視頻,網頁“動”起來就叫叫動態的 2333 動態和靜態的主要區別,是指網頁的頁面是恆定不變的還是由程序動態生成的。

我們知道,瀏覽器其實就相當於一個編譯器,將服務器傳來的文件“翻譯”成我們所看到的網頁形式。對於靜態網頁來說,對於一個固定的請求,服務器傳來的文件是恆定不變的。

而對於動態網頁來講,在收到一個請求後,服務器會調用相應的程序,程序再結合其數據庫,動態生成所需要傳回的文件,再傳回到客戶端由瀏覽器生成相應的頁面。

當然,在Ajax(異步JavaScript+XML)技術出現之後,所說的靜態頁面也允許客戶端的 JavaScript 腳本爲局部頁面提供請求服務,然後可以在無需回到服務器情況下動態刷新部分頁面,其實也就是實現了部分的動態化。當然,和動態頁面能實現的功能相比,Ajax還是有所欠缺。

知道了動態和靜態的區別之後,他們的優勢和劣勢也就顯而易見了。

動態和靜態的優勢劣勢

從內容上講,由於(純)靜態網頁只是將既有的文件發回客戶,所以其網頁的內容是固定的;而動態網頁由於網頁是動態生成的,所以可以做到對於不同的用戶,在不同的時間顯示不同的內容。所以從功能上講,動態網頁相較於靜態網頁,能實現更多更強的功能,比如對數據庫的支持。

另一方面,從源代碼的角度來說,靜態網頁的源代碼是完全公開的,這就導致別人的複製相對容易;而動態網頁的html頁面是動態生成的,瀏覽器顯示的源代碼無法顯示其後端處理的過程,而後端處理的代碼是無法或很難獲取到的。

所以總體來講,靜態網頁的優勢在於無需大量的系統資源(去進行生成網頁的過程),並且瀏覽打開的速度很快。同時由於只有網頁,也相對安全而不易崩潰;同時利於搜索引擎的抓取和處理;而相比之下,動態網頁的優勢就體現其優秀的交互性,並且由於動態的生成涉及到數據庫,使得整個日常維護和結構的更改和遷移變得容易。

對於博客系統來講,無論是靜態還是動態都有着很多優秀的框架。動態框架如wordpress,靜態框架如Jekyll,hexo等,都是很不錯的選擇。

最後我們再以一張表格總結一下,

(純)靜態網站

動態網站

內容

網頁內容固定

網頁內容動態生成

功能

少,弱

多,強

源代碼

完全公開

無法獲取

工具

HTML+CSS+Javascript

ASP/PHP/JSP

數據庫

不支持

支持

優點

無需系統實時生成 利於搜索引擎抓取 瀏覽打開速度快 安全,不易崩潰

交互性強 日常維護簡單 結構更改方便

缺點

交互性弱 日常維護繁瑣 結構更改較不方便

需要大量系統資源 不易被搜索引擎抓取 瀏覽打開速度慢 易遭受攻擊

不知看到這裏,你是否選定了自己的框架~祝大家都能搭出自己心儀的博客~

版權聲明

本作品採用知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議進行許可。轉載請標明

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章