網際網路中有數以億計的網站, 使用者可以透過瀏覽這些網站獲得所需要的資訊。例如, 使用者在瀏覽器的位址列中輸入新浪的網址,瀏覽器就會顯示新浪網的首頁, 從中可以檢視新聞等資訊。那麼新浪網首頁的內容是存放在哪裡的呢? 新浪網首頁的內容是存放在新浪網伺服器上的。所謂伺服器, 就是網路中的一臺主機, 由於它提供 Web 、 FTP 等網路服務, 因此稱其為伺服器。

        使用者的計算機又是如何將存在網路伺服器上的網頁顯示在瀏覽器中的呢? 當使用者在位址列中輸入新浪網地址 (URL, 統一資源定位符) 的時候, 瀏覽器會向新浪網的伺服器傳送 HTTP 請求, 這個請求使用 HTTP 協議, 其中包括請求的主機名、 HTTP 版本號等資訊。伺服器在收到請求資訊後, 將回復的資訊 (一般是文字、圖片等網頁資訊, 也就是 HTML 頁面) 準備好, 再透過網路發回給客戶端瀏覽器。客戶端的瀏覽器在接收到伺服器傳回的資訊後, 將其解釋並顯示在瀏覽器的視窗中, 這樣使用者就可以進行瀏覽了。

        在這個 “請求一響應” 過程中, 如果在伺服器上存放的為靜態 HTML 網頁檔案, 伺服器就會原封不動地返回網頁的內容。如果存放的是動態網頁, 如 JSP 、 ASP 、 ASP.NET 等檔案, 則伺服器會執行動態網頁, 執行的結果是生成一個 HTML 檔案, 然後再將這個 HTML 檔案傳送給客戶端瀏覽器, 客戶瀏覽器將其解釋為使用者見到的頁面。

        因此, 動態網頁和靜態網頁的根本區別在於伺服器端返回的 HTML 檔案是事先儲存好的還是由動態網頁程式生成的。靜態網頁檔案裡只有 HTML 標記, 沒有程式程式碼, 網頁的內容是事先寫好並存放在伺服器上的; 動態網頁檔案不僅含有 HTML 標記, 而且還含有程式程式碼, 當使用者發出請求時, 伺服器由動態網頁程式即時生成 HTML 檔案。動態網頁能夠根據不同的時間、不同的使用者生成不同的 HTML 檔案, 顯示不同的內容。