1. 程式人生 > >服務器端包含 SSI簡介

服務器端包含 SSI簡介

實驗室 頁面 公司 文件中 但是 popu post track edit

服務器端包含 SSI,是英文 Server Side Includes的簡寫。SSI是一種可以指揮服務器動態聲稱網頁內容的HTML指令。

通常SSI可以用來確保網頁中的一些通用內容,比如版權信息、聯系方式、或導航信息在全站所有網頁中保持一致。使用SSI顯示這些通用內容還可以減輕網站維護的工作量,因為當需要修改這些通用信息的時候,只需要改一個地方就可以了,而不需要逐個修改每一個網頁。

各個服務器對SSI命令的支持各有不同,但 #include 和 #exec 是通用的。使用 SSI 的頁面文件通常都使用擴展名.shtml,而不是.html 或 .htm,這樣以便服務器能夠辨認出哪些頁面包含SSI指令,這些頁面需要先經過服務器處理,翻譯執行其中的SSI指令,然後才發送給客戶端瀏覽器。 (當然有些服務器還是支持.html,.htm文件中有SSI指令的)。

如何辨別你的服務器是否支持 SSI?

多數網站寄存服務都支持 SSI – 但是也有一些不支持,特別是一些免費的網站寄存服務。你可以聯系你的網站寄存公司詢問他們是否支持SSI,也可以通過以下方式來自己測試一下你的服務器是否支持SSI:

1. 拷貝以下HTML內容,保存為文件名test.shtml

<html><head></head>

<body><!–#echo var=”DATE_LOCAL” –></body>

</html>

2. 將這個文件上載到你的服務器上,然後用瀏覽器瀏覽服務器上的這個網頁。

3. 如果看到網頁顯示當前日期,則你的服務器支持 SSI。否則,多半可能你的服務器不支持SSI。你可以嘗試與你的網站寄存公司聯系看他們是否可以為你開通SSI服務。

練習1: 顯示版權信息

1. 拷貝以下內容並存為copyright.html文件名 (你可以把鏈接和網站名稱修改為你的網站):

&copy;2007 <a href=”http://www.prglab.com”> 程序員實驗室</a> 版權所有。

在瀏覽器中它應該顯示為

©2007 程序員實驗室 版權所有。

註意:在這個文件代碼中不能夠出現 <html>, <head> 和 <body> 這些標簽,否則包含它的頁面會出錯。

2. 將這個文件copyright.html上傳到你的服務器上。

3. 在要顯示版權信息的頁面底部</body>標簽之前插入以下代碼:

<!–#include virtual=”/copyright.html” –>

4.將修改後的文件上傳到服務器上,然後用瀏覽器打開服務器上的文件,你應該看到頁面的底部顯示版權信息。

註意: 寫有包含指令(#include)代碼的文件可能要保存為擴展名為.shtml的文件名,代碼才能生效。

練習 2: 簡單的導航條

1. 比如我們要寫一個如下所示的導航條

主頁| 聯系方式 | 產品介紹 | 訂單

可以用以下HTML代碼來實現:

<p align=”center”><font face=”Geneva, Arial, Helvetica, sans-serif” size=”2″>

<a href=”home.htm”>主頁</a>

| <a href=”mailto:[email protected]”>聯系方式</a>

| <a href=”products.htm”>產品介紹</a>

| <a href=”orders.htm”>訂單</a></font></p>

2. 保存這些代碼為文件 navigation.shtml 或 navigation.shtm.

3. 打開要插入導航條的頁面,在要顯示導航條的位置插入以下代碼:

<!–#include virtual=”/navigation.shtml” –>

4. 將所有文件上載到服務器上,並用瀏覽器檢查導航條是否如你所設想的顯示。

以上只是兩個很簡單的SSI使用的例子,你還可以自由發揮寫出更復雜的網頁。如果需要修改SSI包含的內容,只需要打開寫有通用內容的網頁,比如上面的copyright.html或navigation.shtml,修改其中的內容,那麽所有包含這個文件的網頁相應內容都會被自動修改。

SSI 相對來說比較容易掌握,並能提高網站維護效率,不妨一試。


服務器端包含 SSI簡介