1.簡介
SSI(Server Side Include),通常稱為伺服器端嵌入,是一種類似於ASP的基於伺服器的網頁製作技術。大多數(尤其是基於Unix平台)的WEB伺服器如Netscape Enterprise Server等均支援SSI命令。
SSI工作原理:
在一個通常以.shtml為副檔名的SSI檔案中,標準的HTML編碼會被直接送到瀏覽器上,而內嵌Perl語言形式的SSI命令則先被網路伺服器解釋執行,如果是標準輸出的話,輸出資訊也將作為標準的HTML而被送至瀏覽器。
SSI簡單應用執行個體:
<html>
<head><title>my first SSI page</title></head>
<body>
歡迎您(於<!--# echo var="date_local" -->)訪問本網站。
</html>
標記在上面文檔中的“<!--# -->”結構表明了SSI命令會被伺服器翻譯執行,而不是直接送到用戶端。我們可以在瀏覽器中用“查看→源檔案"觀察原始碼:
<html>
<head><title>my first SSI page</title></head>
<body>
歡迎您(於dec 06 1999)訪問本網站。
</html>
我們發現,文檔中的html被直接傳到了用戶端,而SSI命令得到了執行。SSI代碼在用戶端是不可見的,用戶端只能看到它執行的效果。
一個比較實用的例子
網站維護常常碰到的一個問題是,網站的結構已經固定,卻為了更新一點內容而不得不重做一大批網頁。SSI提供了一種簡單、有效方法來解決這一問題,它將一個網站的基本結構放在幾個簡單的HTML檔案中(模板),以後我們要做的只是將文本傳到伺服器,讓程式按照模板自動產生網頁,從而使管理大型網站變得容易。如:
<html>
<head><title>SSI example</title></head>
<body>
<h2>新聞</h2>
<p><!--# include file="news.txt" -->
<p>新聞更新日期:<!--# flastmod file="news.txt" -->
</body>
</html>
將頻繁的更新內容放在news.txt中,SSI會通過 include 指令將其內容包含到輸出的網頁中。通過 flastmod 指令可在網頁中顯示new.txt的最近一次更改日期。
構建學習SSI的環境
支援SSI的web server 很多,如可以選用omnihttpd profeSSIonal, 這是一款win 95/98平台下的支援SSI的web伺服器。可直接從http://www.omnicron.ab.ca/httpd/下載這一共用軟體。