日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

配置tomcat让shtml嵌套文件显示

發布時間:2024/9/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 配置tomcat让shtml嵌套文件显示 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

之前,我知道tomcat可以直接解析shtml文件,在瀏覽器中顯示效果來,后來由于需求發生改變,比如說 在做靜態化生成的時候一個網站的頭部和底部都是一樣的,如果每個頁面都生成一次,顯然很浪費時間,所有我們可以把 這個共同的頭部 和底部挖出來單獨生成,然后通過shtml嵌套顯示,就可以了??墒窃趺磳腱o態頭部和底部呢??有好的標簽嗎??有 shtml中有include標簽導入外部文件顯示。

例如:<!--#include virtual="${ctx}/web/header.html"-->(這個不是注釋,shtml導入標簽就是這么寫的)。

如果直接這樣子使用,tomcat是無法解析的。還需要在tomcat中做兩下簡單的配置:

第一:在 tomcat/conf/context.xml 中加上 privileged="true" ,表示享有特權的,

第二:在 tomcat/conf/web.xml中 關于name=“ssi”的servlet 配置取消掉注釋,包括該servlet的映射配置。

如下:

[html]?view plaincopy print?
  • ?????
  • ????<servlet>??
  • ????????<servlet-name>ssi</servlet-name>??
  • ????????<servlet-class>??
  • ??????????org.apache.catalina.ssi.SSIServlet??
  • ????????</servlet-class>??
  • ????????<init-param>??
  • ??????????<param-name>buffered</param-name>??
  • ??????????<param-value>1</param-value>??
  • ????????</init-param>??
  • ????????<init-param>??
  • ??????????<param-name>debug</param-name>??
  • ??????????<param-value>0</param-value>??
  • ????????</init-param>??
  • ????????<init-param>??
  • ??????????<param-name>expires</param-name>??
  • ??????????<param-value>666</param-value>??
  • ????????</init-param>??
  • ????????<init-param>??
  • ??????????<param-name>isVirtualWebappRelative</param-name>??
  • ??????????<param-value>0</param-value>??
  • ????????</init-param>??
  • ???????<!---?<span?style="color:#FF0000;">這里需要手動添加</span>?-->??
  • ????????<init-param>??
  • ??????????<param-name>inputEncoding</param-name>??
  • ??????????<param-value>UTF-8</param-value>??
  • ????????</init-param>??
  • ????????<init-param>??
  • ??????????<param-name>outputEncoding</param-name>??
  • ??????????<param-value>UTF-8</param-value>??
  • ????????</init-param>??
  • ??
  • ????????<load-on-startup>4</load-on-startup>??
  • ????</servlet>??
  • ??
  • ??
  • ??
  • ????<servlet-mapping>??
  • ????????<servlet-name>ssi</servlet-name>??
  • ????????<url-pattern>*.shtml</url-pattern>??
  • ????</servlet-mapping>??

  • 備注:紅色部分需要手動添加,不然在顯示的頁面中會亂碼。

    基本上這樣子配置之后tomcat就回幫你解析shtml的include標簽了。感覺還是蠻方便,蠻強大的。

    另外:

    導入的文件可以不是完整的頁面,就是說可以不用包含html標簽,直接寫幾個div什么的也是可以的。

    如果在頁面上報錯:??? [an error occurred while processing this directive]? 是因為導入的文件不存在引發的。

    總結

    以上是生活随笔為你收集整理的配置tomcat让shtml嵌套文件显示的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。