久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

SSI

來自站長百科
跳轉(zhuǎn)至: 導(dǎo)航、? 搜索

SSI(Server SideInc lude),通常稱為服務(wù)器端嵌入,是一種類似于ASP的基于服務(wù)器的網(wǎng)頁制作技術(shù)。大多數(shù)(尤其是基于Unix平臺(tái))的WEB服務(wù)器如Netscape Enterprise Server等均支持SSI命令。

SSI工作原理[ ]

  • 將內(nèi)容發(fā)送到瀏覽器之前,可以使用“服務(wù)器端包含(SSI)”指令將文本、圖形或應(yīng)用程序信息包含到網(wǎng)頁中。例如,可以使用SSI包含時(shí)間/日期戳、版權(quán)聲明或供客戶填寫并返回的表單。對(duì)于在多個(gè)文件中重復(fù)出現(xiàn)的文本或圖形,使用包含文件是一種簡便的方法。
  • 將內(nèi)容存入一個(gè)包含文件中即可,而不必將內(nèi)容輸入所有文件。通過一個(gè)非常簡單的語句即可調(diào)用包含文件,此語句指示W(wǎng)eb服務(wù)器將內(nèi)容插入適當(dāng)網(wǎng)頁。而且,使用包含文件時(shí),對(duì)內(nèi)容的所有更改只需在一個(gè)地方就能完成。
  • 因?yàn)榘?a class="mw-selflink selflink">SSI指令的文件要求特殊處理,所以必須為所有SSI文件賦予SSI文件擴(kuò)展名。默認(rèn)擴(kuò)展名是.stm、.shtm和.shtml。

SSI功能[ ]

  • shtml—server—parsedHTML的首字母縮略詞。包含有嵌入式服務(wù)器方包含命令的HTML文本。在被傳送給瀏覽器之前,服務(wù)器會(huì)對(duì)SHTML文檔進(jìn)行完全地讀取、分析以及修改。
  • shtml和asp有一些相似,以shtml命名的文件里,使用了ssi的一些指令,就像asp中的指令,你可以在SHTML文件中寫入SSI指令,當(dāng)客戶端訪問這些shtml文件時(shí),服務(wù)器端會(huì)把這些SHTML文件進(jìn)行讀取和解釋,把SHTML文件中包含的SSI指令解釋出來。
  • 可以在SHTML文件中用SSI指令引用其他的html文件(#include),服務(wù)器傳送給客戶端的文件,是已經(jīng)解釋的SHTML不會(huì)有SSI指令。它實(shí)現(xiàn)了HTML所沒有的功能,就是可以實(shí)現(xiàn)了動(dòng)態(tài)的SHTML,可以說是HTML的一種進(jìn)化吧。像新浪的新聞系統(tǒng)就是這樣的,新聞內(nèi)容是固定的但它上面的廣告和菜單等就是用#include引用進(jìn)來的。

SSI用途[ ]

  • 顯示服務(wù)器端環(huán)境變量
  • 將文本內(nèi)容直接插入到文檔中
  • 顯示WEB文檔相關(guān)信息(如文件制作日期/大小等)
  • 直接執(zhí)行服務(wù)器上的各種程序(如CGI或其他可執(zhí)行程序)
  • 設(shè)置SSI信息顯示格式(如文件制作日期/大小顯示方式)高級(jí)SSI可設(shè)置變量使用if條件語句。

SSI使用方法[ ]

  • SSI是為WEB服務(wù)器提供的一套命令,這些命令只要直接嵌入到HTML文檔的注釋內(nèi)容之中即可。例如,就是一條SSI指令,其作用是將"info.htm"的內(nèi)容拷貝到當(dāng)前的頁面中,當(dāng)訪問者來瀏覽時(shí),會(huì)看到其它HTML文檔一樣顯示info.htm其中的內(nèi)容。其它的SSI指令使用形式基本同剛才的舉例差不多,可見SSI使用只是插入一點(diǎn)代碼而已,使用形式非常簡單。如果WEB服務(wù)器不支持SSI,它就會(huì)只不過將它當(dāng)作注釋信息,直接跳過其中的內(nèi)容;瀏覽器也會(huì)忽略這些信息。
  • 在一些WEB服務(wù)器上(如IIS4.0/SAMBAR4.2),包含#include指令的文件必須使用已被映射到SSI解釋程序的擴(kuò)展名;否則,Web服務(wù)器將不會(huì)處理該SSI指令;默認(rèn)情況下,擴(kuò)展名.stm、.shtm和.shtml被映射到解釋程序(Ssinc.dll)。
  • Apache則是根據(jù)你的設(shè)置情況而定,修改srm.conf如:AddTypetext/x-server-parsed-html.shtml將只對(duì).shtml擴(kuò)展名的文件解析SSI指令A(yù)ddTypetext/x-server-parsed-html.html將對(duì)所有HTML文檔解析SSI指令NetscapeWEB服務(wù)器直接使用AdministrationServer(管理服務(wù)器)可打開SSI功能。Website使用ServerAdmin程序中的Mapping標(biāo)簽,擴(kuò)展名添加內(nèi)容類型為:wwwserver/html-ssiCern服務(wù)器不支持SSI,可用SSI詐騙法,到http://sw.cse.bris.ac.uk/webtools/fakessi.html 上下載一個(gè)PERL腳本,即可使你的CERN服務(wù)器使用一些SSI指令。(不支持exec指令)

SSI指令格式[ ]

格式

  • <!--是HTML語法中表示注釋,當(dāng)WEB服務(wù)器不支持SSI時(shí),會(huì)忽略這些信息。
  • #include為SSI指令之一。
  • file為include的參數(shù),info.htm為參數(shù)值,在本指令中指將要包含的文檔名。

注意

  • <!--與#號(hào)間無空格,只有SSI指令與參數(shù)間存在空格。
  • 上面的標(biāo)點(diǎn)=" ",一個(gè)也不能少。
  • SSI指令是大小寫敏感的,因此參數(shù)必須是小寫才會(huì)起作用。
  • file文件名是一個(gè)相對(duì)路徑,該路徑相對(duì)于使用#include指令的文檔所在的目錄。被包含文件可以在同一級(jí)目錄或其子目錄中,但不能在上一級(jí)目錄中。如表示當(dāng)前目錄下的的nav_head.htm文檔,則為file="nav_head.htm"。
  • virtual文件名是Web站點(diǎn)上的虛擬目錄的完整路徑。如表示相對(duì)于服務(wù)器文檔根目錄下hoyi目錄下的nav_head.htm文件;則為file="/hoyi/nav_head.htm"

參數(shù):

  • file指定包含文件相對(duì)于本文檔的位置
  • virtual指定相對(duì)于服務(wù)器文檔根目錄的位置

注意:

  • 文件名稱必須帶有擴(kuò)展名。
  • 被包含的文件可以具有任何文件擴(kuò)展名,直接使用htm擴(kuò)展名最方便,微軟公司推薦使用.inc擴(kuò)展名。

SSI Config命令[ ]

Config命令主要用于修改SSI的默認(rèn)設(shè)置。其中:Errmsg:設(shè)置默認(rèn)錯(cuò)誤信息。為了能夠正常的返回用戶設(shè)定的錯(cuò)誤信息,在HTML文件中Errmsg參數(shù)必須被放置在其它SSI命令的前面,否則客戶端只能顯示默認(rèn)的錯(cuò)誤信息,而不是由用戶設(shè)定的自定義信息。 Timefmt:定義日期和時(shí)間的使用格式。Timefmt參數(shù)必須在echo命令之前使用。
<!--#config timefmt=“%A,%B,%d,%Y”-->
<!--#echo var=“LAST_MODIFIED”-->
顯示結(jié)果為:Wednesday,April12,2000
也許用戶對(duì)上例中所使用的%A%B%d感到很陌生,下面我們就以表格的形式總結(jié)一下SSI中較為常用的一些日期和時(shí)間格式。
Sizefmt:決定文件大小是以字節(jié)、千字節(jié)還是兆字節(jié)為單位表示。如果以字節(jié)為單位,參數(shù)值為"bytes";對(duì)于千字節(jié)和兆字節(jié)可以使用縮寫形式。同樣,sizefmt參數(shù)必須放在fsize命令的前面才能使用。

SSI環(huán)境變量[ ]

除了SSI環(huán)境變量之外,echo命令還可以顯示以下CGI環(huán)境變量:

  • SERVER_SOFTWARE:顯示服務(wù)器軟件的名稱和版本。例如:<!--#echo var=“SERVER_SOFTWARE”--></nowiki>
  • SERVER_NAME:顯示服務(wù)器的主機(jī)名稱,DNS別名或IP地址。例如<!--#echo var=“SERVER_NAME”--></nowiki>
  • SERVER_PROTOCOL:顯示客戶端請(qǐng)求所使用的協(xié)議名稱和版本,如HTTP/1.0。例如:<!--#echo var=“SERVER_PROTOCOL”-->

利用flastmod參數(shù)顯示出一個(gè)頁面上所有鏈接頁面的更新日期。方法如下:
<!--#config timefmt=“%B,%d,%Y”-->
<A HREF=“/directory/file.html”>File</A>
<!--#flastmod virtual=“/directory/file.html”-->
<A HREF=“/another_directory/another_file.html”>Another File</A>
<!--#flastmod virtual=“/another_directory/another_file.html”-->
顯示結(jié)果為:
FileApril19,2000
Another File January08,2000

相關(guān)條目[ ]

參考來源[ ]