摘 要:動態網頁是與靜態網頁是相對應的,它們的應用都很廣泛,二者之間的主要區別在于Web服務器對它們的處理方式是不同的。本文主要分析了二者之間的區別,可為進一步學習當今流行的網頁設計制作技術奠定良好的基礎,對于提高網頁制作水平具有重要的意義。
關鍵詞:靜態網頁動態網頁;HTML;Web瀏覽器;Web服務器
中圖分類號:TP393 文獻標識碼:A 文章編號:1674-7712 (2012) 12-0065-01
靜態網頁是網站建設的基礎,是指網頁是靜態生成,它本身的內容不會發生變化。它相對于動態網頁而言是靜態的,動態網頁指服務器端可以根據客戶不同的數據請求,對應地生成靜態網頁,而不是有些人理解的會動的網頁。其實靜態網頁和動態網頁之間并不矛盾,二者是辯證的統一。動態網頁的內容和靜態網頁的內容完全可以同時出現在一個網站上,這沒有什么可奇怪的。對網站來說,即使確定采用了動態網站的技術,但是只要搜索引擎檢索有這方面的需要,將動態的網頁內容轉化為靜態的網頁內容進行發布也是完全可以的。當然,所謂的動態網站也完全可以采用靜動相結合的原則,根據實際需要決定是采用動態網頁還是靜態網頁,適宜采用動態網頁的要采用動態網頁,適宜采用靜態網頁的地方則采用靜態網頁。本文深入地分析了靜態網頁與動態網頁的區別,相信對更好地進行網頁制作至關重要。
一、靜態網頁
我們知道靜態網頁文件的擴展名一般是.htm或.html,它包含有HTML標記、Jave小程序、文本、客戶端腳本以及客戶端ActiveX控件,不包含服務器端腳本,網頁設計人員編好該頁中HTML代碼后放到Web服務器,不再更改。瀏覽器通過Internet的HTTP協議向站點的Web服務器申請主頁時,站點服務器會將已設計好的靜態HTML文件傳給瀏覽器。更新主頁內容時,只能用一些非在線手動方式。
客戶端瀏覽器向服務器提出HTTP需求,服務器下傳靜態網頁,其處理流程如下:
步驟1:Web瀏覽器請求靜態網頁。用戶在瀏覽器地址欄輸入要訪問的地址并回車,觸發這個瀏覽請求。瀏覽器將請求發送到Web服務器。
步驟2:Web服務器查找靜態網頁。Web服務器接受這個請求,并根據請求文件的后綴名判定是否為HTML文件。
步驟3:Web服務器將靜態網頁發送到請示瀏覽器。即Web服務器從服務器硬盤的指定位置或內存中讀取正確的HTML文件然后將它發送給請求瀏覽器。
當瀏覽器向Web服務器發送網頁請求時,Web服務器會通過文件的擴展名判斷出是否是HTML文件請求,然后再從磁盤或存儲器中獲取適當的HTML文件。然后,Web服務器向用戶的瀏覽器發送HTML文件,當然,用戶的瀏覽器會解釋這個HTML文件并在瀏覽器窗口顯示結果。
二、動態網頁
ASP、PHP、JSP等運行于服務器端的程序、網頁、組件等都是動態網頁。Flash、HTML頁、JavaScript等運行于客戶端的程序、網頁、插件、組件等則均屬于永遠不變的靜態網頁。判斷動態網頁的重要標志就是程序是否在服務器端運行。動態網頁會隨不同客戶的需要和不同時間而返回到不同的網頁。
動態網頁因其以數據庫技術為基礎,所以可以大大地降低網站維護的工作量;相對來說,采用動態網頁技術的網站可實現更多靜態網頁難以實現的功能,如用戶注冊、登錄、在線調查、用戶管理、訂單管理等等;另外,實際上,動態網頁并非獨立存在于服務器上的網頁文件,因為只有當用戶請求時,服務器才返回一個完整的網頁;動態網頁的網站在進行搜索引擎推廣時,為了滿足搜索引擎的要求,必須要做一定的技術處理。
動態網頁與靜態網頁二者之間的主要區別:靜態網頁中的任何腳本都不能在Web服務上運行,而動態網頁中的某些腳本只能在Web服務器上運行。Web服務器接收到靜態網頁請求時直接會將該頁發送到請求瀏覽器,而不進行進一步的處理。Web服務器接收到動態網頁的請求時會將該頁傳遞給一個稱為應用程序服務器的特殊軟件擴展,然后由此軟件負責完成網頁。
當用戶發送一動態網頁請求時,服務器要做更多的工作才能發送回用戶請求的信息。動態網頁的程序在服務器端執行,把程序解釋成標準的HTML代碼。Web服務器端的程序只需將結果傳給瀏覽器,其處理流程:
Web瀏覽器先發送動態網頁請求,接著,Web服務器會查找該頁并將其傳遞給應用程序服務器。應用程序服務器查找該頁中的腳本命令并完成頁并將其傳遞回Web服務器。再由Web服務器發送完成的頁到瀏覽器。
當向Web服務器發送一頁面請求時,Web服務器再從服務器硬盤指定的位置或內存中讀取動態網頁文件。判斷是否是動態網頁文件請求,并從磁盤或存儲器中獲取適當頁傳遞給相應的應用程序服務器。
如何將含有程序代碼的動態網頁轉化為標準的靜態頁面(HTML)?首先,應用程序服務器要查找該頁中的腳本命令,通過在服務器上執行這些腳本命令完成頁,將腳本程序代碼刪除后我們會得到靜態網頁。應用程序服務器將傳遞回所生成的頁給Web服務器,Web服務器會將已經生成的靜態網頁頁面代碼發送給請求瀏覽器,到達客戶端計算機時,該頁所包含的全部內容都是純HTML代碼,這時Web瀏覽器會解釋這些HTML代碼并顯示結果于瀏覽器窗口。
三、動態網頁運行環境
單有動態網頁還不夠,必須建立一個適合動態網頁運行的環境,這就是Web服務器環境和數據庫運行環境(用來調試制作出來的動態網頁)。它們之間的關系為:動態網頁必須通過Web服務器中服務器程序來對數據庫內容進行操作,而服務器程序只有通過數據庫驅動程序才能夠處理數據庫。
可以說,靜態網頁和動態網頁都是各有利弊的,具體采用二者中哪一個要根據實際情況決定。我們在實際應用中,要根據網站的功能需求和網站內容的多少來選擇使用動態網頁還是靜態的網頁。通常采用動態網頁技術,只對那些功能較簡單以及內容更新量不太大的網站,采用純靜態網頁。
參考文獻:
[1]童愛紅.網頁設計技術教程[M].北京:清華大學出版社,2005,1
[2]梁芳.網頁設計與制作[M].北京:清華大學出版社,2011,7
[3]張麗華.新編網頁制作三劍客教程[M].北京:冶金工業出版社,2006,1