`

tomcat7 SSI功能配置

 
阅读更多

在Tomcat中实现SSI,有两种方式:Servlet和Filter。

 

实现SSI支持的Servlet实现使用了org.apache.catalina.ssi.SSIServlet,另外需要在Servlet的路径解析里面添加映射规则“*.shtml”。

实现SSI支持的Filter使用了org.apache.calalina.ssi.SSIFilter。另外,在Filter路径解析里面也需要添加映射规则“*.shtml”,而且在Filter配置的时候需要在映射规则里面添加能够执行的mimetype,contentType的初始化参数允许你执行服务器下边的资源。在Tomcat里面默认是禁用了SSI的。

 

Servlet配置:

(1)修改tomcat根目录下的conf文件夹中的context.xml,修改如下:

<Context privileged="true">  
    <!-- Default set of monitored resources -->  
    <WatchedResource>WEB-INF/web.xml</WatchedResource>  
</Context>  

即在Context 中增加privileged="true"

 

(2)修改tomcat根目录下的conf文件夹中的web.xml,将SSI的Servlet的配置取消注释,并增加编码配置,否则可能出现乱码

<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>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>  
	<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>false</param-value>  
	</init-param>  
	<load-on-startup>4</load-on-startup>  
</servlet>  

 

取消SSI Servlet的mapping注释,增加*.html,因为我们是在html中引入shtml的,如果不配置*.html,则tomcat不会处理html中的ssi指令

<servlet-mapping>  
	<servlet-name>ssi</servlet-name>  
	<url-pattern>*.shtml</url-pattern>  
	<url-pattern>*.html</url-pattern>  
</servlet-mapping> 

 

Filter配置:

(1)修改tomcat根目录下的conf文件夹中的context.xml,修改如下:

<Context privileged="true">  
    <!-- Default set of monitored resources -->  
    <WatchedResource>WEB-INF/web.xml</WatchedResource>  
</Context>  

即在Context 中增加privileged="true"

 

(2)修改tomcat根目录下的conf文件夹中的web.xml,将SSI的Filter的配置取消注释,并增加编码配置,否则可能出现乱码

Filter的相关:

<filter>  
	<filter-name>ssi</filter-name>  
	<filter-class>  
	  org.apache.catalina.ssi.SSIFilter  
	</filter-class>  
	<init-param>  
	  <param-name>contentType</param-name>  
	  <param-value>text/x-server-parsed-html(;.*)?</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>  
</filter

 

FilterMapping相关:

filter-mapping>  
	<filter-name>ssi</filter-name>  
	<url-pattern>*.shtml</url-pattern>  
</filter-mapping>

Filter配置里面还需要取消另外一个注释,下边的MIME TYPE的服务器支持相关注释

<mime-mapping>  
	<extension>shtml</extension>  
	<mime-type>text/x-server-parsed-html</mime-type>  
</mime-mapping> 

.若要解决乱码问题,根据上边文档需要修改SSI中的启动参数:添加如下代码:

<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>  

 

参考:http://bsr1983.iteye.com/blog/2253885;
http://blog.csdn.net/l1028386804/article/details/53526786

分享到:
评论

相关推荐

    tomcat-ssi.rar_SSI

    标题 "tomcat-ssi.rar_SSI" 暗示了这个压缩包与Tomcat服务器配置有关,特别是关于Server Side Include(SSI)的功能。SSI是一种在Web服务器端处理动态内容的技术,允许开发者在HTML页面中嵌入动态内容,如时间戳、...

    SSI必须jar包

    在Web开发中,它可以帮助解析和操作XML数据,为SSI提供数据源或配置信息。 这些jar包组合在一起,构成了一个基本的Web开发环境,支持使用SSI技术构建高效且可扩展的Web应用程序。开发者可以通过这些库来处理用户...

    Tomcat性能调优及配置技巧

    #### 四、开启Tomcat的SSI功能(用来支持shtml) 如果需要支持SSI(Server Side Includes),可以在`server.xml`中启用SSI处理器: ```xml ``` #### 五、修改网站访问端口为80 默认情况下,Tomcat监听8080端口...

    Nginx+tomcat+ssl安装配置手册.pdf

    【Nginx+Tomcat+SSL安装配置手册】 Nginx是一个高效且稳定的HTTP和反向代理服务器,常用于处理静态内容和作为动态应用(如Tomcat)的前端代理。Nginx以其模块化设计、高并发处理能力、低资源消耗和出色的稳定性著称...

    Tomcat配置优化(完整版)

    #### 四、开启tomcat的SSI功能(用来支持shtml) **配置方法**: 在`server.xml`中添加`&lt;Engine&gt;`标签下的`&lt;Host&gt;`标签内,加入如下配置: ```xml ``` 通过加入`&lt;Valve&gt;`标签并设置`className`属性,启用SSI...

    ssi整合基本jar

    在本案例中,“ssi整合基本jar”指的是将SSI功能集成到Java应用中所需的基础JAR文件集合。 首先,理解SSI的基本工作原理是必要的。当Web服务器处理包含SSI指令的HTML文件时,它会解析这些指令并执行相应的操作,...

    传智播客SSI ppt

    在Tomcat 5.5中启用SSI功能,需要进行以下步骤: 1. **修改servlets-ssi.jar**:重命名$CATALINA_HOME/server/lib/servlets-ssi.rename为servlets-ssi.jar。 2. **设置privileged属性**:在$CATALINA_HOME/conf/...

    SSI技术整合

    通过在Tomcat中配置SSI框架,开发人员可以获得一种简洁有效的方式来管理和呈现复杂的Web内容。不仅可以提高网站的性能和可维护性,还能为用户提供更好的用户体验。此外,由于SSI技术的简单性和易用性,即使是初学者...

    ssi整合jar包

    在本案例中,“ssi整合jar包”可能是指一个包含了支持SSI功能的Java库或者是一系列与SSI相关的Java组件的集合。 SSl jar包通常包含以下关键组件和功能: 1. **SSI解析器**:这是jar包的核心部分,用于解析HTML文件...

    ssi框架简单搭建。。。

    在Java环境下,我们可以使用各种框架来实现SSI功能,以提高网站的开发效率和可维护性。下面我们将详细探讨Java中的SSI框架搭建及其应用。 首先,理解SSI的基本概念是必要的。SSI主要通过在HTML文件中使用特定的指令...

    tomcat6学习笔记【原创】

    Tomcat 6 支持SSI功能,但默认不开启,需要通过配置来启用。 1. **配置Apache 2**:在Apache 2的配置文件中,启用SSI模块并配置相关参数。 ```apache LoadModule include_module modules/mod_include.so AddType...

    ssi 整合 及 jar包

    2. **Java Web环境下的SSI集成**:介绍如何在Tomcat或其他支持SSI的服务器上配置和启用SSI功能。 3. **自定义过滤器**:可能涉及创建一个Servlet过滤器来拦截和处理SSI指令。 4. **jar包管理**:讲解如何使用Maven或...

    SSI框架搭建源码

    将这些文件部署到Tomcat或其他Servlet容器,然后连接到`user`数据库,即可运行这个SSI框架搭建的项目。通过查看源码,可以深入理解各组件的工作原理和集成方式,对于提升Java Web开发能力大有裨益。

    ssi 常用jar包

    - 配置Web服务器或应用服务器,启用SSI功能,添加相应的模块或配置项。 - 在HTML文件中插入SSI指令,如`&lt;!--#include virtual="/header.html" --&gt;`。 - 确保服务器正确解析和执行这些指令,将包含的内容插入到...

    用maven构建一个最简单的SSI框架

    【标题】"用Maven构建一个最简单的...通过这个项目,开发者可以学习到Maven的使用,理解SSI的工作原理,以及如何在Java环境中实现和配置SSI功能。这是一个很好的实践项目,适合初学者了解Maven和服务器端动态内容处理。

    eclipse开发的ssi整合struts2+ibatis2.x+spring2.5

    创建一个简单的例子,比如用户登录功能,通过Eclipse的Run As &gt; Run on Server命令,部署项目到Tomcat或其他Servlet容器。然后通过浏览器访问测试URL,观察控制台日志,调试代码,验证整合是否成功。 7. **学习...

    SSI整合程序实例 权限管理

    用户可能需要将这些文件解压并导入到相应的服务器环境中,如Tomcat、Jetty等,然后配置服务器以启动和运行项目。 综上所述,这个压缩包提供的实例是一个完整的SSI集成项目,专注于权限管理的实现。通过Structs2处理...

    ssi框架入门详解

    在这样的项目中,开发环境可能包括Eclipse、Tomcat服务器和MySQL数据库。首先,需要导入所需的库,包括Struts2、Spring、Ibatis以及前端库如ExtJS的依赖。接着,建立Model层,例如User实体类,包含用户ID、名称、...

Global site tag (gtag.js) - Google Analytics