資源描述:
《靜態(tài)頁面和動態(tài)頁面》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、4.2靜態(tài)頁面和動態(tài)頁面4.2.1靜態(tài)頁面在互聯(lián)網(wǎng)發(fā)展的開始階段,人們通過瀏覽器瀏覽的頁面一般都是HTML靜態(tài)頁面,也即Web頁面只包括單純的HTML標(biāo)記文本內(nèi)容,瀏覽器也只能顯示呆板的文字或圖像等信息。用戶使用客戶機(jī)端的Web瀏覽器,訪問Internet上各個Web站點(diǎn),在每一個站點(diǎn)上都有一個主頁(HomePage)作為進(jìn)入某個Web站點(diǎn)的入口。每一Web頁中都可以含有信息及超文本鏈接,超文本鏈接可以讓用戶鏈接到另一Web站點(diǎn)或是其他的Web頁。從服務(wù)器端來看,每一個Web站點(diǎn)由一臺主機(jī)、Web服
2、務(wù)器及許多Web頁所組成,以一個主頁為首,其他的Web頁為支點(diǎn),形成一個樹狀的結(jié)構(gòu),每一個Web頁都是以HTML的格式編寫的。Web服務(wù)器使用HTTP超文本傳輸協(xié)議,將HTML文檔從Web服務(wù)器傳輸?shù)接脩舻腤eb瀏覽器上,就可以在用戶的屏幕上顯示出特定設(shè)計(jì)風(fēng)格的Web頁。但很快,這種靜態(tài)頁面滿足不了用戶的瀏覽需求。用戶除了瀏覽相關(guān)信息外,還需要在瀏覽器瀏覽的頁面中進(jìn)行交互操作,以便讓瀏覽器能處理用戶的請求。在這種需求下,1995年后的瀏覽器發(fā)展成為支持Web頁中加入Javascript或Vbscri
3、pt腳本代碼的網(wǎng)頁,以便創(chuàng)建內(nèi)容和表現(xiàn)力更加豐富的HTML頁面,可以讓用戶實(shí)現(xiàn)瀏覽器中的動態(tài)交互操作。但此時的網(wǎng)頁仍然是靜態(tài)網(wǎng)頁,它不需要Web服務(wù)器做任何工作,Web服務(wù)器將網(wǎng)頁傳送到客戶端后,由瀏覽器解釋執(zhí)行帶有腳本語言的網(wǎng)頁。但這種靜態(tài)網(wǎng)頁已經(jīng)讓用戶感覺到網(wǎng)頁的多姿多彩,已具有某種程度上的動態(tài)特性,而這種動態(tài)特性是基于客戶端瀏覽器的。隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展以及網(wǎng)上信息呈幾何級數(shù)的增加,人們逐漸發(fā)現(xiàn)手工編寫包含所有信息和內(nèi)容的頁面對人力和物力都是一種極大的浪費(fèi),而且?guī)缀踝兊秒y以實(shí)現(xiàn)。此外,采用
4、靜態(tài)頁面方式建立起來的站點(diǎn)只能簡單地根據(jù)用戶的請求傳送現(xiàn)有頁面,而無法實(shí)現(xiàn)各種動態(tài)的交互功能。具體來說,靜態(tài)頁面在以下幾個方面都存在明顯的不足:(1)無法支持后臺數(shù)據(jù)庫。隨著網(wǎng)上信息量的增加,以及企業(yè)和個人希望通過網(wǎng)絡(luò)發(fā)布產(chǎn)品和信息的需求的增強(qiáng),人們越來越需要一種能夠通過簡單的Web頁面訪問服務(wù)端后臺數(shù)據(jù)庫的方式。這是靜態(tài)頁面所遠(yuǎn)遠(yuǎn)不能實(shí)現(xiàn)的。(2)無法有效地對站點(diǎn)信息進(jìn)行及時的更新。用戶如果需要對傳統(tǒng)靜態(tài)頁面的內(nèi)容和信息進(jìn)行更新或修改的話,只能夠采用逐一更改每個頁面的方式。在互聯(lián)網(wǎng)發(fā)展初期網(wǎng)上信息
5、較少的時代,這種做法還是可以接受的。但現(xiàn)在即便是個人站點(diǎn)也包含著各種各樣的豐富內(nèi)容,因此如何及時、有效地更新頁面信息已成為一個亟待解決的問題。(3)無法實(shí)現(xiàn)動態(tài)顯示效果。所有的靜態(tài)頁面都是事先編寫好的,是一成不變的,因此訪問同一頁面的用戶看到的都將只是相同的內(nèi)容,靜態(tài)頁面無法根據(jù)不同的用戶做不同的頁面顯示。靜態(tài)頁面的上述不足之處,促使Web技術(shù)進(jìn)入了發(fā)展的第二階段即動態(tài)網(wǎng)頁的應(yīng)用。4.2.2動態(tài)頁面為了克服靜態(tài)頁面的不足,人們將傳統(tǒng)的編程技術(shù)與Web技術(shù)相結(jié)合,從而形成新的網(wǎng)頁開發(fā)技術(shù),就是通過在傳
6、統(tǒng)的靜態(tài)頁面中加入各種程序和邏輯控制,實(shí)現(xiàn)瀏覽器客戶端和Web服務(wù)器的動態(tài)信息交互。人們將這種使用網(wǎng)絡(luò)編程技術(shù)創(chuàng)建的頁面稱為動態(tài)頁面。動態(tài)網(wǎng)頁與靜態(tài)網(wǎng)頁是相對應(yīng)的,也就是說,網(wǎng)頁URL的后綴不是.htm、.html、.shtml、.xml等靜態(tài)網(wǎng)頁的常見形式,而是以.asp、.jsp、.php、.perl、.cgi等形式為后綴。不過要注意,這里說的動態(tài)網(wǎng)頁,與網(wǎng)頁上的各種動畫、滾動字幕等視覺上的動態(tài)效果沒有直接關(guān)系,動態(tài)網(wǎng)頁也可以是純文字內(nèi)容的,也可以是包含各種動畫的內(nèi)容,這些只是網(wǎng)頁具體內(nèi)容的表現(xiàn)
7、形式,無論網(wǎng)頁是否具有動態(tài)效果,采用動態(tài)網(wǎng)站技術(shù)生成的網(wǎng)頁都稱為動態(tài)網(wǎng)頁。從網(wǎng)站瀏覽者的角度來看,無論是動態(tài)網(wǎng)頁還是靜態(tài)網(wǎng)頁,都可以展示基本的文字和圖片信息,但從網(wǎng)站開發(fā)、管理、維護(hù)的角度來看就有很大的差別,表現(xiàn)在以下幾個方面:(1)動態(tài)網(wǎng)頁以數(shù)據(jù)庫技術(shù)為基礎(chǔ),可以大大降低網(wǎng)站維護(hù)的工作量;(2)采用動態(tài)網(wǎng)頁技術(shù)的網(wǎng)站可以實(shí)現(xiàn)更多的功能,如用戶注冊、用戶登錄、在線調(diào)查、用戶管理、訂單管理等等;(3)動態(tài)網(wǎng)頁實(shí)際上并不是事先寫好的、獨(dú)立存在Web服務(wù)器上的網(wǎng)頁文件,只有當(dāng)用戶請求時服務(wù)器才動態(tài)生成一個
8、網(wǎng)頁,并返回一個完整的網(wǎng)頁到客戶端瀏覽器。動態(tài)頁面生成技術(shù)主要包括CGI、ASP/ASP.NET、JSP、PHP等幾種方式。1.CGI動態(tài)頁面技術(shù)公用網(wǎng)關(guān)接口(CommonGatewayInterface,CGI)可以稱之為一種機(jī)制??梢允褂貌煌某绦蚓帉慍GI程序,如VisualBasic、Delphi或C/C++等,將已經(jīng)寫好的程序編譯成EXE文件放在Web服務(wù)器上運(yùn)行,再將其運(yùn)行結(jié)果通過Web服務(wù)器傳輸?shù)娇蛻舳说臑g覽器上。通過CGI建立Web頁面與腳本程序之間的