DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> WEB網站前端 >> 前端技巧 >> 淺談.html,.htm,.shtml,.shtm的區別與聯系
淺談.html,.htm,.shtml,.shtm的區別與聯系
編輯:前端技巧     
大家都知道,我們每天浏覽的網頁或者網站或者web頁都有自己的後綴名,而不同的後綴名則對應著不同的文件格式和不同的規定、協議、用法,其中最常見的後綴名是.html和.htm,還有常見的.shtml和.shtm格式。我們大多數開發者只知道他們區別不大,而且可以任意使用,殊不知這裡面還是有一些聯系的,筆者淺淺總結了下,特與大家分享。

首先,介紹下.html和.html
html是當今網頁文件的一種最基本的,也是使用最廣泛的保存格式,是一種超文本標記語言,是WWW的描述語言,與PHP、jsp、asp之類的動態網頁技術所保存的文本格式不同,頁面中沒有嵌入任何服務器端要執行的語句,是一種靜態的頁面格式,一般的浏覽器都能夠直接解釋並顯示。
關於htm,其實與html並沒有本質意義上的區別,只是為了滿足DOS的8+3(文件名不能超過8個字符,擴展名不能超過3個字符)的文件名名規范。因為一些老的系統(32位)不能識別4位文件擴展名,所以某些服務器要求.html的最後一個l省略。浏覽器能自動識別和打開這些文件,但編寫這些網頁網址的時候必須是對應的,也就是說index.html和index.htm是兩個不同的文件,對應著不同的地址。

其次,介紹下.shtml和.shtm
關於shtml,是一種基於SSI技術支持的文件,也就是Server Side Include--SSI服務器段的包含指令,一些Web Server如果有SSI功能的話就會對shtml文件進行特殊的招待,服務器首先會先掃描一次shtml文件看下有沒有特殊的SSI指令的存在,如果有的話就按照Web Server的設定規則解釋SSI指令,然後解釋完後就會跟普通的HTML被浏覽器解釋並顯示。
關於shtm,shtm與shtml的關系和htm與html的關系大致相似,這裡不再贅述...

最後,html或htm與shtml或shtm的關系
html或者htm是一種靜態的頁面格式,也就是說不需要服務器解析其中的腳本,或者說裡面沒有服務器端執行的腳本,而shtml或者shtm由於是基於SSI技術,當有服務器端執行腳本時被當作一種動態語言來看待,就如PHP、JSP或者ASP一樣。
當shtml或者shtm中不包含服務器端可執行腳本時其作用和html或者htm是一樣的。

SHTML和HTML的區別,如果用一句話來解釋就是:SHTML 不是HTML而是一種服務器 API,shtml是服務器動態產成的html.
雖然兩者都是超文本格式,但shtml是一種用於SSI技術的文件。 也就是Server Side Include--SSI 服務器端包含指令。 如果Web Server有SSI功能的話(大多數(尤其是基於Unix平台)的WEB服務器如Netscape Enterprise Server等均支持SSI命令)。
會對shtml文件特殊招待。 先掃一次shtml文件看沒有特殊的SSI指令現在。
有就按Web Server設定規則解釋SSI指令。 解釋完後跟一般html一起掉去客戶端。

shtml
使用SSI(Server Side Include)的html文件擴展名,SSI(Server Side Include),通常稱為"服務器端嵌入"或者叫"服務器端包含",是一種類似於ASP的基於服務器的網頁制作技術。

SSI工作原理:
將內容發送到浏覽器之前,可以使用“服務器端包含 (SSI)”指令將文本、圖形或應用程序信息包含到網頁中。例如,可以使用 SSI 包含時間/日期戳、版權聲明或供客戶填寫並返回的表單。對於在多個文件中重復出現的文本或圖形,使用包含文件是一種簡便的方法。將內容存入一個包含文件中即可,而不必將內容輸入所有文件。通過一個非常簡單的語句即可調用包含文件,此語句指示 Web 服務器將內容插入適當網頁。而且,使用包含文件時,對內容的所有更改只需在一個地方就能完成。

因為包含 SSI 指令的文件要求特殊處理,所以必須為所有 SSI 文件賦予 SSI 文件擴展名。默認擴展名是 .stm、.shtm 和 .shtml

Web 服務器在處理網頁的同時處理 SSI 指令。當 Web 服務器遇到 SSI 指令時,直接將包含文件的內容插入 HTML 網頁。如果“包含文件”中包含 SSI 指令,則同時插入此文件。除了用於包含文件的基本指令之外,還可以使用 SSI 指令插入文件的相關信息(如文件的大小)或者運行應用程序或 shell 命令。

網站維護常常碰到的一個問題是,網站的結構已經固定,卻為了更新一點內容而不得不重做一大批網頁。SSI提供了一種簡單、有效的方法來解決這一問題,它將一個網站的基本結構放在幾個簡單的HTML文件中(模板),以後我們要做的只是將文本傳到服務器,讓程序按照模板自動生成網頁,從而使管理大型網站變得容易。

所以,利用SHTML格式的頁面目的和 ASP 差不多,但是因為是 API 所以運轉速度更快,效率更高,比ASP快,比HTML慢,但由於可以使用服務器端包含,因此使頁面更新容易(特別是批量更新banner,版權等),想象一下吧,你有一段 HTML,要在中間穿插一些特殊的服務端腳本,比如插入其他 HTML 段落,你選擇 ASP 來完成這個任務,但是如果任務更繁重,需要更多的時間,比如 5 s,這個時候你不用 ASP 而用 SHTML,或許處理時間就只用 4 s 了.
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved