之前,我知道tomcat可以直接解析shtml檔案,在瀏覽器中顯示效果來,後來由於需求發生改變,比如說 在做靜態化生成的時候乙個**的頭部和底部都是一樣的,如果每個頁面都生成一次,顯然很浪費時間,所有我們可以把 這個共同的頭部 和底部挖出來單獨生成,然後通過shtml巢狀顯示,就可以了。可是怎麼匯入靜態頭部和底部呢??有好的標籤嗎??有 shtml中有include標籤匯入外部檔案顯示。
例如: (這個不是注釋,shtml匯入標籤就是這麼寫的)。
如果直接這樣子使用,tomcat是無法解析的。還需要在tomcat中做兩下簡單的配置:
第一:在 tomcat/conf/context.xml 中加上 privileged=「true」 ,表示享有特權的,
第二:在 tomcat/conf/web.xml中 關於name=「ssi」的servlet 配置取消掉注釋,包括該servlet的對映配置。
如下:
ssi
org.apache.catalina.ssi.ssiservlet
buffered
1 debug
0 expires
666
0 inputencoding
utf-8
outputencoding
utf-8
4 *.shtml
備註:紅色部分需要手動新增,不然在顯示的頁面中會亂碼。
基本上這樣子配置之後tomcat就回幫你解析shtml的include標籤了。感覺還是蠻方便,蠻強大的。
另外:匯入的檔案可以不是完整的頁面,就是說可以不用包含html標籤,直接寫幾個div什麼的也是可以的。
如果在頁面上報錯: [an error occurred while processing this directive] 是因為匯入的檔案不存在引發的。
**:
配置tomcat讓shtml巢狀檔案顯示
之前,我知道tomcat可以直接解析shtml檔案,在瀏覽器中顯示效果來,後來由於需求發生改變,比如說 在做靜態化生成的時候乙個 的頭部和底部都是一樣的,如果每個頁面都生成一次,顯然很浪費時間,所有我們可以把 這個共同的頭部 和底部挖出來單獨生成,然後通過shtml巢狀顯示,就可以了。可是怎麼匯入靜...
配置tomcat 支援shtml解析
1 修改tomcat目錄下的web.xml servlet配置 在這個web.xml檔案裡面,找到以下注釋 段,將注釋 段去掉 servlet配置 filter配置 filter的相關配置 只是filter配置裡面還需要取消另外乙個注釋,下邊的mime type的伺服器支援相關注釋 3,支援中文 解...
使用tomcat發布含有shtml檔案的web程式
平常都是使用html或jsp,當匯入含有shtml的乙個web專案時,向平常一樣使用jetty執行,訪問到shtml檔案時,直接在瀏覽器上顯示出了原始碼。查詢,使用tomcat發布,修改tomcat的一些配置可以正常訪問shtml檔案。注意 在shtml檔案中 表示的是匯入,不是注釋資訊 發布的配置...