配置tomcat ssi shtml

首先,tomcat去解析ssi是不明智的做法,最好让tomcat去集成apache,让apache解析静态文件。

配置过程如下:

目前主流的web服务器都提供了SSI实现,我们只需要打开SSI功能就可以使用。
下面我们就介绍在Tomcat5.5下如何使用SSI技术:
第一步:把$CATALINA_HOME/server/lib/servlets-ssi.renametojar的名称改为servlets-ssi.jar
第二步:设置$CATALINA_HOME/conf/context.xml文件,在<Context>节点添加privileged="true"属性,该属性指定我们发布的web应用有权限使用容器的servlet。当你如果需要在$CATALINA_HOME/conf/server.xml添加其它web应用时,最好也为<Context>加上privileged="true"属性,如下:
<Context debug="0" path="" docBase="E:/website" privileged="true"/>
第三步:在$CATALINA_HOME/ conf/web.xml开启SSI的功能,Tomcat提供了两种开启SSI的方式:一种是servlet,另一种是filter。这里我们使用Servlet开启SSI功能。
在$CATALINA_HOME/ conf/web.xml文件中找到<servlet-name>ssi</servlet-name> ,把对该Servlet的注释去掉,然后根据shtml文件的编码格式指定inputEncoding 和outputEncoding 属性值,代码见下页。

如果是tomcat6,第一步可以省去

<servlet>
<servlet-name>ssi</servlet-name>
<servlet-class>org.apache.catalina.ssi.SSIServlet</servlet-class>
这里省略了一些代码
<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的注释之后,我们别忘了也要<servlet-mapping>的注释去掉,如:
<servlet-mapping>
<servlet-name>ssi</servlet-name>
<url-pattern>*.shtml</url-pattern>
</servlet-mapping>

你可能感兴趣的:(tomcat)