古詩詞大全網 - 成語大全 - 平安夜空間留言代碼

平安夜空間留言代碼

動態網站和靜態網站的區別

靜態網站特點:

1.網頁內容壹經發布到網站服務器上,無論是否有用戶訪問,每個靜態網頁的內容都是保存在網站服務器上的,也就是說,靜態網頁是實實在在保存在服務器上的文件,每個網頁都是壹個獨立的文件;

2.靜態網頁的內容相對穩定,因此容易被搜索引擎檢索;

3.靜態網頁沒有數據庫的支持,在網站制作和維護方面工作量較大,因此當網站信息量很大時完全依靠靜態網頁制作方式比較困難;

4.靜態網頁的交互性交叉,在功能方面有較大的限制。

那麽什麽是動態網站呢?所謂“動態”,並不是指網頁上簡單的GIF動態圖片或是Flash動畫,動態網站的概念現在還沒有統壹標準,但都具備以下幾個基本特征:

1.交互性:網頁會根據用戶的要求和選擇而動態地改變和響應,瀏覽器作為客戶端,成為壹個動態交流的橋梁,動態網頁的交互性也是今後Web發展的潮流。

2.自動更新:即無須手動更新HTML文檔,便會自動生成新頁面,可以大大節省工作量。

3.因時因人而變:即當不同時間、不同用戶訪問同壹網址時會出現不同頁面。

此外動態網頁是與靜態網頁相對應的,也就是說,網頁 URL的後綴不是.htm、.html、.shtml、.xml等靜態網頁的常見形式,而是以.asp、.jsp、.php、.perl、.cgi等形式為後綴。 在動態網頁網址中有壹個標誌性的符號——“?”,如有這樣壹個動態網頁的地址為:

/ip/index.asp?id=1

這就是壹個典型的動態網頁URL形式。

這裏說的動態網頁,與網頁上的各種動畫、滾動字幕等視覺上的“動態效果”沒有直接關系,動態網頁也可以是純文字內容的,也可以是包含各種動畫的內容,這些只是網頁具體內容的表現形式,無論網頁是否具有動態效果,采用動態網站技術生成的網頁都稱為動態網頁。

從網站瀏覽者的角度來看,無論是動態網頁還是靜態網頁,都可以展示基本的文字和圖片信息,但從網站開發、管理、維護的角度來看就有很大的差別。網絡營銷教學網站將動態網頁的壹般特點簡要歸納如下:

(1)動態網頁以數據庫技術為基礎,可以大大降低網站維護的工作量;

(2)采用動態網頁技術的網站可以實現更多的功能,如用戶註冊、用戶登錄、在線調查、用戶管理、訂單管理等等;

(3)動態網頁實際上並不是獨立存在於服務器上的網頁文件,只有當用戶請求時服務器才返回壹個完整的網頁;

(4)動態網頁中的“?”對搜索引擎檢索存在壹定的問題,搜索引擎壹般不可能從壹個網站的數據庫中訪問全部網頁,或者出於技術方面的考慮,搜索蜘蛛不去抓取網址中“?”後面的內容,因此采用動態網頁的網站在進行搜索引擎推廣時需要做壹定的技術處理才能適應搜索引擎的要求。

如今,各大論壇、聊天室人滿為患,說明網絡發展強調更多的交互性。也許妳也想擁有壹個私人論壇——聽聽別人對妳主頁的建議和看法;擁有壹個聊天室——誌趣相投的朋友在壹起自由討論……其實,只要跟我們壹起了解動態主頁的制作技巧,在自己的網站中輕松搭建個人社區就再也不是夢想了!那麽,從本期開始,別忘了關註我們為妳推出的動態網頁制作技術教程。

提起動態主頁的制作,就不能不說到ASP動態網頁技術。細心的讀者會發現很多網站的文件是以*.asp結尾,那麽這個ASP到底是什麽,它與HTML有什麽關系,又是如何工作的呢?不妨壹起來看壹看。

壹、細說ASP

ASP 是Active Server Pages的簡稱,是微軟開發的服務器端腳本環境,它內含於IIS或PWS中,提供壹個用於服務器端腳本執行的環境,以此來實現動態交互的目的,這也是許多動態網頁技術的***同特征。本章內容均圍繞 IIS來進行講解,PWS的內容與此大致相同。

ASP的興起似乎是“壹夜之間”,到底它有什麽“魔力“呢?

1.無須編譯或鏈接即可執行,可集成於HTML代碼中,有了它,可省去許多繁瑣重復的勞動。

2.與瀏覽器無關:用戶端只要使用可執行HTML代碼的任何瀏覽器(例如IE、Netscape等),即可瀏覽由ASP所設計的主頁內容。所有代碼都是在服務器端執行,只要寫好代碼,工作服務器就能搞定壹切。

3. 可通過ActiveX Server Components(ActiveX服務器組件)來擴充功能,而 ActiveX Server Component可使用Visual Basic、Java、Visual C++、COBOL等語言來實現,有了它就可隨意擴展功能。更令人興奮的是,現在網上有很多第三方組件可以隨意下載,想要什麽盡可去Search、去Download,然後放在妳的ASP代碼中調用就OK啦。

4.ASP與任何ActiveX Scripting語言兼容。除了可使用VBScript或JavaScript語言來設計之外,還可通過Plug-in的方式,使用由第三方提供的例如REXX、Perl、Tcl等腳本語言,學過動態主頁制作的人都知道它們的重要性。

5.ASP源程序代碼不會在瀏覽過程中被下載到用戶的瀏覽器中,也就是說它對妳的代碼進行了保密。太棒了,花了九牛二虎之力做好的東東可不能讓別人輕輕點壹下鼠標就拿走了。

ASP作為壹種動態網頁制作技術易學易用,很是讓人心動。接下來我們就來看看ASP是如何工作的,壹般來說,ASP文件由3個部分組成:

1.普通的HTML文本(也就是基本網頁的內容)。

2.客戶端的腳本代碼(<script>與</script>之間的程序代碼)。

3.服務端執行的程序代碼(<%……%>之間的程序代碼)。

我們先來看壹個簡單的例子:

hello.asp

<% @language=VBScript%>

<html>

<head>

<title>每天不同時刻的問候語</title>

</head>

<body>

<%

dim says

if hour(now)<12 then

says="早上好!"

else

if hour(now)<18 then

says="下午好!"

else

says="晚上好!"

end if

end if

%>

<h1><% =says %></h1><body>

</html>

結果怎麽樣呢?如果瀏覽者是早晨10點打開這個網頁,將會看見“早上好!”的問侯語(圖1),如果是下午14點進入,頁面中則會出現“下午好!”。上面 <%……%>之間的程序由服務器來執行,而我們常用的腳本則是由客戶端來執行。這個簡單的例子包含了ASP的典型結構,並且強調了ASP的服務端執行,對於我們初學ASP有壹定的參考意義。

ASP動態網頁與普通的靜態網頁在顯示上有很大不同,它整個的運行過程可分成以下幾步:

第1步:用戶在瀏覽器的網址欄中輸入.asp文件名稱,並回車觸發這個ASP的請求。

第2步:瀏覽器將這個Active Server Pages的請求發送給IIS。

第3步:IIS接收這個請求並根據其.asp的後綴,意識到這是個ASP請求。

第4步:IIS從硬盤或內存中接收正確的ASP文件。

第5步:IIS將這個文件發送到壹個叫ASP.dll的特定文件中。

第6步:ASP文件將會從頭至尾被執行,並根據命令要求生成相應的靜態頁面,生成HTML主頁。

第7步:HTML主頁將被送回瀏覽器。

第8步:HTML主頁將會被用戶瀏覽器解釋執行並顯示在用戶瀏覽器上。

為了清晰地說明問題,以上步驟已經進行了很大簡化。事實上,壹個ASP並不壹定每次都會重新編譯解釋,如果第二次接受以前的請求,而該請求沒有任何變化,ASP會從數據緩存中提取出以前的結果,而不是再次運行ASP程序,這樣可以大大提高運算速度。

對於服務器來說,ASP與HTML有著本質的區別,HTML是不經任何處理就被送回給瀏覽器,而ASP的每壹條命令都首先被用來生成HTML文件,這也正是ASP允許生成動態內容的原因之壹,也是動態網頁復雜之所在。

另壹方面,對於瀏覽器來說,ASP和HTML幾乎沒有區別,僅僅是後綴為*.asp和*.htm(或*.html)的不同,當客戶端提出ASP請求後,瀏覽器接受的其實是HTML格式的文件。通過以上壹個簡單的ASP例子,有兩點必須記住:有些代碼是在服務器端執行,有些是在客戶端瀏覽器端執行,而在瀏覽器端看到的是經過服務器解釋之後輸出的代碼。

二、ASP的基本語法

VBScript是ASP的缺省語言,當然也可在 ASP網頁中使用其它腳本語言,如JavaScript、Perl等。這裏所有的ASP都使用VBScript,我們將要介紹的也主要是VBScript 的語法知識。相信通過前些期JavaScipt專題的學習,妳壹定對VBScript駕輕就熟了,其實VBScript跟JavaScript很類似,它是從Visual Basic中簡化出來的版本,作為壹種解釋語言,也非常容易學習和使用。

1.將VBScript的腳本集成到ASP中

方法主要有3種:最簡單且最常用的方法是使用兩個特殊字符“<%”和“%>”,只要在使用的VBScipt腳本語句前後加上它們即可,例如:<% Response.write"VBScipt腳本" %>。

第二種方法是在特定的主頁中指定主要的腳本語言,要將這種語言名稱直接放在ASP程序的第壹行,例如:

<% @language=VBScript %>

<html>

<body>...

</body></html>

第三種是方法是利用微軟的HTML<Script>拓展對象,這樣就可以在壹個單獨的主頁中混合使用多種Script腳本。例如下面的例子:

<% @language="VBScript" %>

<html>

<head><title>ASP Script示例</title></head>

<body>

<script language="JScript" RUNAT="server">

function sayhello()

{

response.write(“混合使用多種script腳本”)

}</script>

<% for I=1 to 10

sayhello()

next

%>

</body>

</html>

需要註意的是,使用<script>包含的腳本會立即執行,無論它放在ASP的任何位置。此外,上面提到的第二和第三種方法,可以在ASP中靈活使用其他的腳本語言,而不只是局限於VBScript。