apache SHTML網(wǎng)頁(yè)SSI使用詳解
2024-08-27 18:28:12
供稿:網(wǎng)友
方法一:下面是詳細(xì)的設(shè)置apache支持shtml的設(shè)置步驟
開啟includes模塊運(yùn)行shtml
0、開啟php環(huán)境安裝目錄 (我的為D:/wamp/Apache2/conf下) 的httpd.conf 文件中的(大概408-409行處):
1、 AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
2、(F:/shz 為運(yùn)行文件存放的地方)
DocumentRoot "F:/shz" (大概150處)
<Directory "F:/shz"> (大概178處)
3、在Options Indexes FollowSymLinks 后面添加 +Includes
如:Options Indexes FollowSymLinks +Includes (大概197處):
需重啟apache);
方法二:如何讓apache支持.shtml 讓apache支持include標(biāo)簽
打開conf目錄下的httpd.conf文件,搜索“AddType text/html .shtml”,搜索結(jié)果:
修改為:
代碼如下:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Options Indexes FollowSymLinks includes
保存httpd.conf,重起apache即可。
到此我們就完成了對(duì)Apache SSI的設(shè)置.
<!--#include file="index.php"-->
個(gè)人覺得SSI的好處是靜態(tài)化中局部動(dòng)態(tài)化的處理比較方便,比如新聞中的留言
以下是詳細(xì)的說(shuō)明介紹
因?yàn)榕啃薷钠饋?lái)很不方面,所以我們總希望能將頁(yè)腳與頁(yè)尾include到html文件中來(lái)。html屬于客戶端解析形的格式化語(yǔ)言,自4.0后幾乎很難再有大的變動(dòng)(畢竟很多瀏覽器只按4.0標(biāo)準(zhǔn)來(lái)解析),所以至今也沒(méi)include這樣的概念。而html的框架(frame與iframe)雖然可以用來(lái)包含首頁(yè)與頁(yè)腳文件,但使用frame與iframe的概念與動(dòng)態(tài)頁(yè)面(asp,jsp,php等)的include那樣不同,frame與iframe的主體頁(yè)面與被包括的頁(yè)的不是一個(gè)頁(yè)面,而通過(guò)include的方式調(diào)用的頁(yè)面主體頁(yè)面與被包括的頁(yè)面仍然是一個(gè)頁(yè)面,這樣頁(yè)面再加載的時(shí)就沒(méi)速度的影響,更不會(huì)有多個(gè)窗口這樣的問(wèn)題。當(dāng)然frame與iframe的作用還是挺大的,只是這與include這樣包括頁(yè)面進(jìn)來(lái)的概念不同。
除frame與iframe之外,常用的調(diào)用文件的方法還有采用js。這與include概念倒是很接近,但可以需要客戶端js的支持,而且修改也不很方面,因?yàn)楸话ǖ膉s是通過(guò)document.write來(lái)輸出html代碼,這樣雖然能達(dá)到效果,可js畢竟執(zhí)行客戶端動(dòng)態(tài)效果更好,比如現(xiàn)在較流行的AJAX。所以無(wú)論是frame/iframe還是js都與include不太一樣(倒是Dreamweaver中的library與include很像,可惜只能用在Dreamweaver中),而我們有時(shí)頁(yè)面有很多靜態(tài)頁(yè)面,內(nèi)容不是動(dòng)態(tài)的且沒(méi)有規(guī)律可循,更不好做到數(shù)據(jù)庫(kù)里去。如新浪的新聞之類的,這時(shí)我們可以采用shtml的方式來(lái)做這些頁(yè)面。
那什么是shtml呢?
使用SSI(Server Side Include)的html文件擴(kuò)展名,SSI(Server Side Include),通常稱為"服務(wù)器端嵌入"或者叫"服務(wù)器端包含",是一種類似于ASP的基于服務(wù)器的網(wǎng)頁(yè)制作技術(shù)。默認(rèn)擴(kuò)展名是 .stm、.shtm 和 .shtml。